TCP/IP入门(二):IP基础知识
1、IP即网际协议
- IP(IPv4,IPv6)相当于OSI参考模型中的第3层——网络层。
- 网络层的主要作用“实现终端节点之间的通信” ,主要负责将数据包发送给最终的目标计算机。这种终端节点之间的通信也叫作”点对点通信“。
- 数据链路层的主要作用是在互连同一种数据链路的节点之间进行包传递。而一旦跨越多种数据链路,就需要借助网络层,网络层可以跨越不同的数据链路,即使在不同的数据链路上也能实现两端端节点之间的数据包传输。
主机与节点
主机:配置有IP地址,但是不进行路由控制[指中转分组数据包]的设备。
路由器:既配有IP地址又具有路由控制能力的设备。
节点:路由器和主机的统称。
数据链路层与网络层的关系
数据链路层提供直连两个设备之间的通信功能,与之相比,作为网络层的IP则负责在没有直连的两个网络设备之间进行通信传输。
下图是一个极好的例子:
2、IP基础知识
- IP大致分为三大作用模块:IP寻址,路由(最终节点为止的转发)、以及IP分包与组包。
2.1IP地址属于网络层地址
- 在网络通信中,为了识别通信对端,必须要有一个类似于地址的识别码进行标识
- 数据链路层的MAC地址。MAC地址正是用来标识同一个链路中不同计算机的识别码。
- 作为网络层的IP,地址信息叫做IP地址,IP地址用于连接到网络中所有主机中识别出进行通信的目标地址。 因此在TCP/IP通信中所有主机或路由器必须设定自己的IP地址。
2.2路由控制
- 路由控制(Routing):是指将分组数据发送到最终目标地址的功能。
- 发送数据到目标地址:Hop(跳),是指网络中的一个区间,IP包正是在网络中一个个路由被转发,因此IP路由也被称为多跳路由,在每一个区间内决定包在下一条被转发的路径。
- 多跳路由是指路由器或主机在转发IP数据包的时候只指定下一个路由器或主机,而不是将最终目标地址为止的所有通路全部指定出来。因为每一个区间(跳),在转发IP数据包时指定下一跳的操作,直至包到达最终的目标地址。
路由控制表
为了将数据包发送给目标主机,所有主机都维护着一张路由控制表,该表记录着IP数据在下一步应该发给哪个路由器,IP包根据该表在各个数据链路上传输。
2.3数据链路的抽象化
- 不同的数据链路有个最大的区别:就是他们各自的最大传输单位不同。
- 为了解决该问题,IP进行分片处理:将较大的IP包分成多个较小的IP包,分片到了对端目标地址以后会在被组合起来传给上一层。
2.4IP属于面向无连接型
- IP面向无连接,即在发包之前,不需要建立与对端目标地址之间的连接。
- 优点:
- 简化
- 提速
- 为了提高可靠性,上一层的TCP采用面向有连接型
- IP提供尽力服务,即为了把数据包发送到目的地,尽最大的努力,然后不做最终收到与否的验证。