欢迎来到天天文库
浏览记录
ID:10486344
大小:1.26 MB
页数:46页
时间:2018-07-06
《tcpip协议规范及uip处理流程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、目录一、简要历史3二、TCP/IP协议族32.1.简介32.2.编址32.2.1物理地址32.2.2逻辑地址42.2.3端口地址52.3.分层数据包介绍52.3.1以太网帧52.3.2ARP报文格式62.3.3IP数据报格式62.3.4ICMP报文格式72.3.5IGMP报文格式92.3.6UDP用户数据报首部格式92.3.7TCP报文段格式102.4.分层协议讲解112.4.1ARP和RARP122.4.2IP协议132.4.3ICMP协议132.4.4网际组管理协议(IGMP)162.4.5用户数据报(UDP)172.4.
2、6传输控制协议(TCP)18三、UIP处理流程203.1.简介203.2.层次结构203.2.1实现设备驱动与UIP对接需要的7个接口程序,定义在uip.h:213.2.2应用层要调用的函数,包括一些宏定义与函数,定义在uip.h:243.2.3UIP中所用到的主要结构体273.2.4uip的初始化与配置函数31463.2.5Uip的主程序循环323.2.6主要的处理函数uip_process()343.2.7再来分析UIP_UDP_SEND_CONN,主要处理UDP报文的发送:373.2.8接下来,分析UIP_POLL_RE
3、QUEST383.2.9对定时器期满的处理流程UIP_TIMER403.2.10对UIP_UDP_TIMER的处理流程413.2.11原始套接字和原始线程4146一、简要历史1973年,ARPANET核心组成员VintCerf和BobKahn发表了一篇里程碑论文,阐述了实现分组的端到端交付的协议。这篇关于传输控制协议(TCP)的论文包括:封装、数据报,以及网关的功能。后来,TCP被划分为两个协议:传输控制协议(TCP)和网际互联协议(IP)。IP处理数据报的路由选择,而TCP负责高层的一些功能,如分段、重装和差错检测。这个用来
4、进行网际互联的协议后来就被称为TCP/IP。二、TCP/IP协议族2.1.简介TCP/IP协议族由5层组成:物理层、数据链路层、网络层、运输层和应用层。前四层与OSI模型的前四层相对应,提供物理标准、网络接口、网际互联、以及运输功能。而应用层与OSI模型中最高的三层相对应。TCP/IP协议族中的各层包含了一些相对独立的协议。在物理层和数据链路层,TCP/IP并没有定义任何协议。在网络层TCP/IP支持网际互联协议(IP),而IP又由四个支撑协议组成:ARP、RARP、ICMP和IGMP。在传统上,TCP/IP协议族在运输层有两
5、个运输协议:TCP和UDP,然而现在已经设计出一个新的运输层协议SCTP以满足新的应用的需要。IP是主机到主机的协议,即把分组从一个物理设备交付到另一个物理设备。UDP和TCP是运输机协议,负责把报文从一个进程(运行着的程序)交付到另一个进程。2.2.编址使用TCP/IP协议的互联网使用3个等级的地址:物理(链路)地址、逻辑(IP)地址以及端口地址。每一种地址属于TCP/IP体系结构中的特定层。122.12.22.2.1物理地址物理地址也叫链路地址,是结点的地址,由它所在的局域网或广域网定义。物理地址包含在数据链路层使用的帧中
6、。以太网的地址是6字节(48位)长,通常用十六进制记法,如:07:01:02:01:2C:4B。以太网的地址共3种:单播、多播和广播。在单播地址中的第一个字节的最低位0;在多播地址中的第一个字节的最低位是1。广播地址是48个1。461.1.1逻辑地址因特网的逻辑地址是32位地址,可以用来标志连接在因特网上的每个主机。在因特网上没有两个主机有相同的IP地址。同样,逻辑地址也可以是单播地址、多播地址和广播地址。Internet被各种路由器和网关设备分隔成很多网段,为了标识不同的网段,需要把32位的IP地址划分成网络号和主机号两部分
7、,网络号相同的各主机位于同一网段,相互间可以直接通信,网络号不同的主机之间通信则需要通过路由器转发。把所有IP地址分为五类,如下图1所示:图2-1A类 0.0.0.0到127.255.255.255B类 128.0.0.0到191.255.255.255C类 192.0.0.0到223.255.255.255D类 224.0.0.0到239.255.255.255E类 240.0.0.0到247.255.255.255在分类编址的A类、B类、C类地址中,IP地址可划分为net-id(网络标识)和host-id(主机标识)。对于
8、A类地址,1字节定义net-id而3字节定义host-id。对于B类地址,2字节定义net-id,2字节定义host-id。对于C类地址,3字节定义net-id而1字节定义host-id。D类地址和E类地址不划分net-id和host-id。网络地址是一个地址块的第一个地址,
此文档下载收益归作者所有