您的位置:首页 > 理论基础 > 计算机网络

TCP/IP的三次握手建立连接

2010-03-06 15:16 615 查看
Internet是使用TCP/IP协议簇。互联网发展之所以迅猛,恐怕得益于TCP/IP协议簇吧。Internet发展到今天,TCP/IP协议也显示出它的缺憾之处。为了保障信息安全,大量新的安全协议加入到TCP/IP协议大家庭里。无论是技术人员还是维护人员,都要熟悉、甚至精通于TCP/IP协议,最起码要对TCP/IP协议簇中最基础、最重要的协议,如:TCP、IP、ARP、HTTp、FTP等协议了如指掌。于是,为了我自己更深入地学习、帮助那些像我一样热爱计算机网络而自学的朋友们,我决定在我的百度空间里搞一个“揭秘TCP/IP协议簇”系列文章,不是系统讲解(我也没那个本事),抓协议中的某几个关键点进行探讨。错误之处,敬请朋友们斧正。
  在TCP/IP协议簇中第三层运输层中,有两种运输层协议:UDP、TCP。其中TCP是面向连接的。通过三次握手,客户端与服务端建立TCP连接。  




   图一 TCP三次手连接 
  使用GreenBrowser网页浏览器连接GNU的网站:http://www.gnu.org。应用层Http协议使用TCP协议建立连接,然后利用http协议在客户端与Web服务器之间传递网页数据。
  使用Sniffer Pro 4.0抓取三次握手的数据包:
  



  图二
在上图中客户端:Lenovo-3a3db1b1,服务器是gnu.org,客户端发起的第一次连接数据包详细内容:
  



  图三
  连接的目的端口是80,表示连接的是Web服务器(服务器中Web服务进程)。客户端随机选择一个初始序列号,并把SYN置为1,表示发起TCP连接。 
 



  图四 Web服务进程应答客户端的连接
  web服务进程也随机选择一串数字作为连接序列号,ACK数为客户端发起连接的初始序列号加1。Web服务器进行可以与多个Web客户端建立连接,提供服务,这样可以把每一个连接区别开。ACK置为1,表示是应答是数据包。
  



  图五
  向Web服务进程发起连接的Web客户端应答Web服务器对自己连接的应答的应答。这时TCP连接成功了,接下Web客户端可以用HTTP协议请求Web网页数据。这三次连接中有一个连接错误,就不能建立TCP连接,通信中断。如果,通信要继续,还要进行三次握手连接。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: