美文网首页Network
TCP、UDP、IP头部结构

TCP、UDP、IP头部结构

作者: 分流替躺欧阳克 | 来源:发表于2019-06-04 16:18 被阅读0次

    数据传输在TCP/IP网络模型中,经过一层便会添加一层头部,其中TCP(网络传输协议),UDP处于传输层,IP(网间协议)处于网络层。

    数据进入协议栈的封装过程

    TCP/IP协议族

    • TCP 传输控制协议 应用程序之间通信 建立的全双工通信
    • UDP 用户数据包协议 应用程序间简单通信
    • IP 网际协议 计算机之间的协议,寻址 无连接的,不占用通信线路
    • ICMP 因特网消息控制协议 针对错误和状态,处于IP层协议
    • DHCP 动态主机配置协议 针对动态寻址

    TCP/IP网络模型

    1. 应用层(ISO中的应用层,表示层,会话层)
      SMTP(电子邮件)、TELNET(远程终端接入)、HTTP(万维网)、FTP(文件传输)——————TCP
      DNS(域名转换)、TFTP(文件传输)、SNMP(网络管理)、NFS(远程文件服务器)——————UDP
    2. 传输层
      为数据加TCP,UDP头部
    3. 网络层
      为数据加IP头部,TCP/IP协议的核心,所有的TCP、UDP、IGMP、IMCP数据都以IP数据格式传递
    4. 网络接入层(称呼很多,ISO中数据链入层,物理层)
      这层负责将比特流封装成帧,把网络层数据报加上帧头帧尾,帧头包括源mac地址和目的mac地址,有差错检测

    IP数据包头部


    IP数据包头部

    //IP数据包前20个字节固定,一般是20到60个字节
    TIPHeader = packed record
    iph_verlen: byte; // 版本和长度
    iph_tos: byte; // 服务类型
    iph_length: word; // 总长度,2个无符号字节所以只能65535
    iph_id: word; // 标识
    iph_offset: word; // 标志和片偏移
    iph_ttl: byte; // 生存时间
    iph_protocol: byte; // 协议
    iph_xsum: word; // 头校验和
    iph_src: longword; // 源地址
    iph_dest: longword; // 目的地址
    end;
    通常20个字节,最多不超过60个字节

    TCP数据包的头


    TCP数据包的头部

    typedef struct _TCP_HEADER {
    USHORT nSourPort ; // 源端口号16bit
    USHORT nDestPort ; // 目的端口号16bit
    UINT nSequNum ; // 序列号32bit
    UINT nAcknowledgeNum ; // 确认号32bit
    USHORT nHLenAndFlag ; // 前4位:TCP头长度;中6位:保留;后6位:标志位16bit
    USHORT nWindowSize ; // 窗口大小16bit
    USHORT nCheckSum ; // 检验和16bit
    USHORT nrgentPointer ; // 紧急数据偏移量16bit
    } TCP_HEADER, *PTCP_HEADER ;
    一般是20个字节,加上option也不超过60个字节

    UDP数据包的头部


    UDP数据包的头部

    typedef struct _UDP_HEADER {
    USHORT nSourPort ; // 源端口号16bit
    USHORT nDestPort ; // 目的端口号16bit
    USHORT nLength ; // 数据包长度16bit
    USHORT nCheckSum ; // 校验和16bit
    } UDP_HEADER, *PUDP_HEADER ;
    一般8个字节

    DNS:DNS(Domain Name System,域名系统),因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。通过主机名,最终得到该主机名对应的IP地址的过程叫做域名解析(或主机名解析)。DNS协议运行在UDP协议之上,使用端口号53。

    相关文章

      网友评论

        本文标题:TCP、UDP、IP头部结构

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