美文网首页
TCP/IP协议

TCP/IP协议

作者: Brant白叔 | 来源:发表于2017-10-24 16:46 被阅读23次

    TCP/IP协议的工作流程如下:

    • 在源主机上,应用层将一串应用数据流传送给传输层。
    • 传输层将应用层的数据流截成分组,并加上TCP报头形成TCP段,送交网络层。
    • 在网络层给TCP段加上包括源、目的主机IP地址的IP报头,生成一个IP数据包,并将IP数据包送交链路层。
    • 链路层在其MAC帧的数据部分装上IP数据包,再加上源、目的主机的MAC地址和帧头,并根据其目的MAC地址,将MAC帧发往目的主机或IP路由器。
    • 在目的主机,链路层将MAC帧的帧头去掉,并将IP数据包送交网络层。
    • 网络层检查IP报头,如果报头中校验和与计算结果不一致,则丢弃该IP数据包;若校验和与计算结果一致,则去掉IP报头,将TCP段送交传输层。
    • 传输层检查顺序号,判断是否是正确的TCP分组,然后检查TCP报头数据。若正确,则向源主机发确认信息;若不正确或丢包,则向源主机要求重发信息。
    • 在目的主机,传输层去TCP报头,将排好顺序的分组组成应用数据流送给应用程序。这样目的主机接收到的来自源主机的字节流,就像是直接接收来自源主机的字节流一样。

    TCP/IP 协议的七层

    • **应用层(Application layer) **
    • 表示层(Presentation layer)
    • 会话层(Session layer)
    • 传输层(Transport layer)
    • 网络层(Network layer)
    • 数据链路层(Data link layer)
    • 物理层(Physical layer)

    TCP和UDP的区别

    • TCP提供的是面向连接的、可靠的数据流传输
    • UDP提供的是非面向连接的、不可靠的数据流传输。
    • 简单的说,TCP注重数据安全,而UDP数据传输快点,但安全性一般.

    建立连接协议(三次握手)

    • 客户端发送一个带SYN标志的TCP报文到服务器。这是三次握手过程中的报文1。
    • 服务器端回应客户端的,这是三次握手中的第2个报文,这个报文同时带ACK标志和SYN标志。因此它表示对刚才客户端SYN报文的回应;同时又标志SYN给客户端,询问客户端是否准备好进行数据通讯。
    • 客户必须再次回应服务段一个ACK报文,这是报文段3。

    连接终止协议(四次挥手)

    由于TCP连接是全双工的,因此每个方向都必须单独进行关闭。这原则是当一方完成它的数据发送任务后就能发送一个FIN来终止这个方向的连接。收到一个 FIN只意味着这一方向上没有数据流动,一个TCP连接在收到一个FIN后仍能发送数据。首先进行关闭的一方将执行主动关闭,而另一方执行被动关闭。

    • TCP客户端发送一个FIN,用来关闭客户到服务器的数据传送(报文段4)。
    • 服务器收到这个FIN,它发回一个ACK,确认序号为收到的序号加1(报文段5)。和SYN一样,一个FIN将占用一个序号。
    • 服务器关闭客户端的连接,发送一个FIN给客户端(报文段6)。
    • 客户段发回ACK报文确认,并将确认序号设置为收到序号加1(报文段7)。

    相关文章

      网友评论

          本文标题:TCP/IP协议

          本文链接:https://www.haomeiwen.com/subject/wylxpxtx.html