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

TCP/IP协议的一点分享

2021-05-16 20:46 1121 查看

一、网络参考模型

1、OSI模型和TCP/IP模型

1、OSI模型

OSI模型总共七层,通过精确的区分层次,以确定各个层次的功能。总体模型如下:

1. 应用层

网络服务与最终用户的一个接口。
协议有:HTTP FTP TFTP SMTP SNMP DNS TELNET HTTPS POP3 DHCP

2. 表示层

数据的表示、安全、压缩。(在五层模型里面已经合并到了应用层)
格式有,JPEG、ASCll、EBCDIC、加密格式等 [2]

3. 会话层

建立、管理、终止会话。(在五层模型里面已经合并到了应用层)
对应主机进程,指本地主机与远程主机正在进行的会话

4. 传输层

定义传输数据的协议端口号,以及流控和差错校验。
协议有:TCP UDP,数据包一旦离开网卡即进入网络传输层

5. 网络层

进行逻辑地址寻址,实现不同网络之间的路径选择。
协议有:ICMP IGMP IP(IPV4 IPV6)

6. 数据链路层

建立逻辑连接、进行硬件地址寻址、差错校验 [3] 等功能。(由底层网络定义协议)
将比特组合成字节进而组合成帧,用MAC地址访问介质,错误发现但不能纠正。

7. 物理层

建立、维护、断开物理连接。(由底层网络定义协议)

2、TCP/IP五层模型

TCP/IP协议作为网络协议的一种实现,它并没有按照OSI的七层模型,而是更加精简的五层模型。

并且通过整合OSI的应用、会话和表示层,将这部分合并如TCP/IP应用层中。

二、TCP/IP的会话

1、TCP的三次握手

TCP协议作为面向连接的协议,有可靠性的特性,每次传输数据时,需要首先建立连接通道。在建立过程中就有三次握手的机制。

由一方发起,发送SYN请求,在另外一方收到后,发送SYN+ACK报文来响应请求,最后第一方发送ACK就完成建立。
整个建立过程中的两方的状态如下:

在最后一个ACK报文发送后,客户端为established,服务器端是在收到最后一个ACK后变为established状态。

2、TCP的断开四次挥手

TCP在传输过程中,任何一方都可以断开连接。客户端发送FIN报文,服务端收到FIN报文后,发送FIN报文和ACK报文,客户端收到FIN报文后,发送ACK响应结束请求,如果客户端不响应,那么在会在2倍的MSL(Maximum Segment Lifetime)超时后关闭。在RFC793指出MSL为2分钟,实际应用中常用的是30秒(linux),1分钟和2分钟

三、TCP和UDP的区别

TCP和UDP协议是TCP/IP协议的核心。 TCP 传输协议:TCP 协议是一TCP (Transmission Control Protocol)和UDP(User Datagram Protocol)协议属于传输层协议。其中TCP提供IP环境下的数据可靠传输,它提供的服务包括数据流传送、可靠性、有效流控、全双工操作和多路复用。通过面向连接、端到端和可靠的数据包发送。通俗说,它是事先为所发送的数据开辟出连接好的通道,然后再进行数据发送;而UDP则不为IP提供可靠性、流控或差错恢复功能。一般来说,TCP对应的是可靠性要求高的应用,而UDP对应的则是可靠性要求低、传输经济的应用。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: