TCP/IP协议

一、TCP/IP协议簇
TCP/IP协议是将不同地域、不同操作系统、不同型号的计算机联系起来的纽带。 网络协议初探中提到了五层模型和七层模型及其简单介绍,本文讲到的TCP/IP协议簇则分为四个层次。

1、链路层,有时也成数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算机中对应的网络接口卡。将比特组装成帧和点到点的传递(帧Frame),主要协议ARP(Address Resolution Protocol,地址解析协议,把 IP 地址映射为物理地址)、RARP(逆向 ARP,就是将物理地址映射为 IP 地址)、SLIP、CSLIP、MTU等。
2、网络层,有时也称互联网层,处理分组在网络中的活动,负责数据包从源到宿的传递和网际互连(包Packet),主要协议有IP(网际协议)、ICMP (Internet互联网控制报文协议)、IGMP协议(Internet组管理协议)。通过网络层可以在网络中去唯一确定是哪个主机。
3、运输层,也称传输层,主要为两台主机上应用程序提供端到端的通信。传输层有两个不同的传输协议:TCP/UDP。通过传输层可以唯一确定主机的端口(即哪个应用程序)。
4、应用层负责处理特定的应用程序细节。应用层协议主要包括如下几个:FTP、TELNET、DNS、SMTP、NFS、HTTP。
FTP(File Transfer Protocol)是文件传输协议,一般上传下载用FTP服务,数据端口是20H,控制端口是21H。
Telnet服务是用户远程登录服务,使用23H端口,使用明码传送,保密性差、简单方便。
DNS(Domain Name Service)是域名解析服务,提供域名到IP地址之间的转换,使用端口53。
SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议,用来控制信件的发送、中转,使用端口25。
NFS(Network File System)是网络文件系统,用于网络中不同主机间的文件共享。
HTTP(Hypertext Transfer Protocol)是超文本传输协议,用于实现互联网中的WWW服务,使用端口80。
二、TCP协议
即传输控制协议,它提供的是一种可靠的 数据流 服务。当传送受差错干扰的数据,或举出 网络故障 ,或网络负荷太重而使网际基本传输系统不能正常工作时,就需要通过其他的协议来保证通信的可靠。 TCP 就是这样的协议。TCP采用“带重传的肯定确认”技术来实现传输的可靠性。并使用“ 滑动窗口 ”的 流量控制 机制来提高网络的吞吐量。TCP通信建立实现了一种“ 虚电路 ”的概念。双方通信之前,先建立一条链接然后双方就可以在其上发送数据流。这种数据交换方式能提高效率,但事先建立连接和事后拆除连接需要开销。
TCP建立连接的三次握手以及TCP断开连接的四次挥手。

1、三次握手原因
三次握手而不是两次是为了避免网络或硬件等原因导致客户端第一次发出的SYN(seq=x)并没有及时到达服务端,于是服务端就没有回应,客户端没接收到服务端回应就第二次发了一个SYN(seq=y),第二次请求服务器正常接收到并且开始了会话。如果过了一段时间第一次发送的请求到达了服务器,服务器就会把第一次的请求又作为新的请求回复ACK(x+1)客户端,由于ACK(x+1)是无效请求,客户端不会理会,也就没再回复服务器,这就导致服务器一直干等着,造成资源浪费。
两次握手的问题在于服务器端不知道一个SYN是否是无效的,而三次握手机制因为客户端会给服务器回复第二次握手,也意味着服务器会等待客户端的第三次握手,如果第三次握手迟迟不来,服务器便会认为这个SYN是无效的,释放相关资源。
2、挥手时等待时间2MSL原因
在TCP断开过程中,当客户端接收到服务端的请求断开请求并发出确认报文,此时客户端处于TIME_WAIT状态时会等待2MSL时间,如果过了2MSL时间没再收到服务端请求则客户端也就将置于CLOSED状态,这个2SML对应的是客户端确认报文到达服务器时间加上服务器未完成报文到达客户端时间。
三、IP层
I P是T C P / I P协议族中最为核心的协议。所有的 T C P、U D P、I C M P及I G M P数据都以I P数据报格式传输(见下图)。I P是不可靠和无连接的。

不可靠(u n r e l i a b l e)的意思是它不能保证 I P数据报能成功地到达目的地。 I P仅提供最好的传输服务。如果发生某种错误时,如某个路由器暂时用完了缓冲区, I P有一个简单的错误处理算法:丢弃该数据报,然后发送 I C M P消息报给信源端。任何要求的可靠性必须由上层来提供(如T C P)。
无连接(c o n n e c t i o n l e s s)这个术语的意思是I P并不维护任何关于后续数据报的状态信息。每个数据报的处理是相互独立的。这也说明, I P数据报可以不按发送顺序接收。如果一信源向相同的信宿发送两个连续的数据报(先是 A,然后是B),每个数据报都是独立地进行路由
选择,可能选择不同的路线,因此 B可能在A到达之前先到达。
I P路由选择,并指出主机的路由选择可以非常简单:如果目的主机在直接相连的网络上,那么就把数据报直接传给目的主机,否则传给默认路由器。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值