• 《TCP/IP详解》读书笔记


    1. 网络协议的分层,有四个层次,从下向上分别是:

    链路层:也称作数据链路层或网络接口层。主要处理物理接口的细节

    网络层:也称作互联网层,处理分组在网络中的活动。在TCP/IP协议族中网络层协议包括IP、ICMP和IGMP。

    运输层:为两台主机上的应用程序提供端到端的通信。在TCP/IP协议族中有两个不同的传输协议,TCP和UDP。

    应用层:负责处理特定的应用程序细节,TCP/IP的实现都会提供Telnet、FTP、SMTP、SNTP等通用应用程序。

    其中网络层和运输层的最大区别是:网络层(IP)提供点到点的服务,运输层(TCP、UDP)提供端到端的服务。

    2.在TCP/IP协议族中,IP提供不可靠的服务,尽可能快的把分组从源节点送到目的节点,不提供任何可靠性保证。TCP在IP层之上,采用了超时重传、发送和接收端到端的确认分组机制,提供了可靠的服务。

    3.应用程序使用TCP传送数据时,数据被送入协议栈中,逐个通过每一层直到被当做一串比特流送入网络。每一层对收到的数据都增加一些首部信息(有时还增加尾部信息)。UDP数据与TCP数据基本一致。唯一的不同是UDP传给IP的信息单元称作UDP数据包,而且UDP首部为8字节。

    4.IP提供不可靠、无连接的数据报传输服务:

    不可靠:不能保证IP数据报能成功到达目的地。简单的错误处理算法,丢弃数据报,发送ICMP消息给信息源。

    无连接:IP不维护任何关于后续数据报的状态信息。每个数据报的处理是相互独立的。数据报可以不按发送顺序接收。

    5.TCP通过以下方式提供可靠性:

    a.应用数据被分割成TCP认为最适合发送的数据块。UDP应用程序产生的数据报长度保持不变。

    b.发出一个段后,启动一个定时器等待目的端确认收到该报文段,如未能及时收到确认,将重发报文段。

    c.当TCP收到另一端的数据,将发送一个确认(通常推迟几分之一秒)。

    d.TCP将保持它首部和数据的校验和。如果收到的校验和有差错,TCP将丢弃这个报文段且不发送收到确认。

    e.因IP数据报的到达可能会失序,TCP报文段的到达也可能会失序,如有必要,TCP会对收到的数据进行重新排序。

    f.TCP的接收端必须丢弃重复的数据。

    g.TCP提供流量控制。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。

    6.建立TCP连接的三次握手:

    a.请求端发送一个SYN段指名客户打算连接的服务器的端口,以及初始化序号(ISN)。

    b.服务器发回包含服务器的初始序号的SYN报文段作为应答。同时,将确认序号设置为客户的ISN加1以对客户的SYN报文段进行确认。

    c.客户必须将确认序号设置为服务器的ISN加1以对服务器的SYN报文段进行确认。

  • 相关阅读:
    CSS为英文和中文字体分别设置不同的字体
    进程控制之孤儿进程
    求解逻辑问题:谁养鱼
    2019-7-29-win10-uwp-如何使用DataTemplate
    2019-7-29-win10-uwp-如何使用DataTemplate
    2018-8-10-win10-uwp-修改Pivot-Header-颜色
    2018-8-10-win10-uwp-修改Pivot-Header-颜色
    2018-10-17-Sublime-Text-好用的插件
    2018-10-17-Sublime-Text-好用的插件
    2018-11-13-WPF-禁用实时触摸
  • 原文地址:https://www.cnblogs.com/vectorli/p/5395219.html
Copyright © 2020-2023  润新知