TCP/IP网络模型入门
副标题[/!--empirenews.page--]
TCP/IP网络模型 TCP/IP模型是互联网的基础,,它是一系列网络协议的总称。这些协议可以划分为四层,分别为链路层、网络层、传输层和应用层。
在网络体系结构中网络通信的建立必须是在通信双方的对等层进行,不能交错。 在整个数据传输过程中,数据在发送端时经过各层时都要附加上相应层的协议头和协议尾(仅数据链路层需要封装协议尾)部分,也就是要对数据进行协议封装,以标识对应层所用的通信协议。 OSI七层模型 当然在理论上,还有一个OSI七层模型:物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。这是一个理想模型,由于其复杂性并没有被大家广泛采用。 链路层 (1) 以太网和802封装 以太网封装是以RFC894定义的 而802封装则是RFC1042定义的 主机需求RFC要求: (1)必须支持以太网封装 (2)应该支持与RFC894混合的RFC1042封装 (3)或许可以发送RFC1042封装的分组 (2) SLIP 适用于RS-232和高速调制解调器接入网络 (1)以0xC0结束 (2)对报文中的0xC0和ESC字符进行转义 缺点:没有办法通知本端IP到对端;没有类型字段;没有校验和 (3) CSLIP 将SLIP报文中的20字节IP首部和20字节TCP首部压缩为3或5字节 (4) PPP协议 修正了SLIP协议的缺陷,支持多种协议类型;带数据校验和;报文首部压缩;双方可以进行IP地址动态协商(使用IP协议);链路控制协议可以对多个链路选项进行设置。 (5) 环回接口 用于同一台主机上的程序通过TCP/IP通信。 传给环回的数据均作为输入; 传给该主机IP地址的数据也是送到环回接口; 广播和多播数据先复制一份到环回接口,再送到以太网上。 (6) MTU 对数据帧长度的最大限制,如果数据分组长度大于这个数值,需要在IP层对其分片。 注意:发往以太网的数据要考虑路径MTU IP网际协议 IP是TCP/IP中最为核心的协议,所有的TCP、UDP、ICMP等协议均以IP数据报的格式传输。IP协议提供不可靠、无连接的服务,它不保证数据报一定可以送达目的,也不保证数据报的先后次序。 IP首部格式为: 注:网络字节序:32bit传输的次序为0-7bit, 8-15bit, 16-23bit, 24-31bit(即big endian字节序) IP路由 IP路由选择是逐跳进行的。IP并不知道到达任何目的的完整路径(当然,除了那些与主机直接相连的)。所有的IP路由选择只为数据报传输提供下一站路由器的I P地址。它假定下一站路由器比发送数据报的主机更接近目的,而且下一站路由器与该主机是直接相连的。 IP路由选择主要完成以下这些功能:
如果上面这些步骤都没有成功,那么该数据报就不能被传送。如果不能传送的数据报来自本机,那么一般会向生成数据报的应用程序返回一个“主机不可达”或“网络不可达”的错误。 IP路由选择是通过逐跳来实现的。数据报在各站的传输过程中目的IP地址始终不变,但是封装和目的链路层地址在每一站都可以改变。大多数的主机和许多路由器对于非本地网络的数据报都使用默认的下一站路由器。 IP路由选择机制的两个特征: (1)完整主机地址匹配在网络号匹配之前执行 (2)为网络指定路由,而不必为每个主机指定路由 IP地址和MAC地址分类 按IP地址范围划分:
按照通讯模式划分:
单播是对特定的主机进行数据传送。如给某一个主机发送IP数据包,链路层头部是非常具体的目的地址,对于以太网来 说,就是网卡的MAC地址。广播和多播仅应用于UDP,它们对需将报文同时传往多个接收者的应用来说十分重要。
子网掩码 子网掩码用来确定多少bit用于网络号和多少bit用于主机号。 给定IP地址和子网掩码以后,主机就可以确定IP数据报的目的是: (1)本子网上的主机; (2)本网络中其他子网中的主机; (3)其他网络上的主机。 如果知道本机的IP地址,那么就知道它是否为A类、B类或C类地址(从IP地址的高位可以得知),也就知道网络号和子网号之间的分界线。而根据子网掩码就可知道子网号与主机号之间的分界线。 封装 (编辑:青岛站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |