网络中IP数据报传输的过程
来源:互联网 发布:汽车导航一体机端口 编辑:程序博客网 时间:2024/06/08 19:28
IP数据报需从主机A上传送到主机B上,主机A首先查找路由表;
if(目的主机是与自己在同一个网段内)
{
主机A查询自己的ARP表;
if(有该目的IP地址对应的MAC地址的记录)
{
将该MAC地址作为目的MAC地址,封装数据帧,传送给主机B;
}
else
{
发送一个ARP请求广播给网段内的所有主机,来查询该目的IP地址的MAC地址;
收到ARP请求报文的各个主机如果发现该IP地址是自己的IP地址,则返回一个ARP应答报文告诉主机A自己的MAC地址;
如果发现不是自己的IP地址,则丢弃该报文。
主机A收到这个应答报文后,就按照返回的MAC地址,将IP数据包封装成帧,然后发送到主机B上;
(补充:一般为了减少网络中的报文量,通信双方会维护一个各自的ARP表,把一次通信中获得IP MAC地址对保存在缓冲的ARP表中,但是ARP表有一个老化机制,删除一段时间内不用的IP MAC地址对。)
}
}
else if(发现了能与目的网络号相匹配的表目)
{
则把报文发给改表目指定的下一站的路由器或直接连接的网络接口;
报文发送到下一站时,数据帧的目的MAC地址是下一个站路由器或者网络接口的MAC地址,而IP头部的目的IP地址是主机B的IP地址;
这里要指出的是:ARP请求报文以下一站路由器或网络接口的IP地址为目的IP地址,寻找真的目的MAC地址。换句话,ARP请求报文只负责IP数据报传输过程中每一跳中的目的MAC地址查询。
}
else
{
寻找标为“默认”的表目,把报文发送给该表目指定的下一站路由器;
报文发送到下一站时,数据帧的目的MAC地址是下一个站路由器的MAC地址,而IP头部的目的IP地址是主机B的IP地址。
}
数据帧在每两个网络设备间传递时,是转换成bit流在传输媒体上传输。链路层提供了如停止等待协议等机制,控制了bit流在传输媒体上的无错传输。
转自:http://blog.csdn.net/beyond_cn/article/details/9421025
- 顶
- 0
- 踩
0 0
- 网络中 IP数据报 传输的过程
- 网络中IP数据报传输的过程
- IP数据报传输与处理过程
- 网络传输过程中TCP/IP协议详解
- RFC894--以太网上IP数据报的传输标准
- 网络层-IP数据报的格式
- RFC双语计划:rfc1088中文版(中英文对照)............在NetBIOS网络上传输IP数据报的标准
- 网络传输中,数据经历了哪些过程和转变
- 数据在网络中传输过程(arp-proxy)
- 数据的网络传输
- 数据通过网络传输过程中如果传输的数据为富文本,其中包含了&字符,获取数据时会出问题
- 解决网络传输的过程中,出现乱码的问题
- 网络帧的传输过程
- 彻底解决网络传输过程中出现的中文乱码问题
- IP数据报的分片和组装过程
- 《ASCE1885的网络编程》---IP数据报格式
- 网络层(一)IP数据报首部格式&为什么要有IP地址&IP地址演化过程
- TCP数据的传输过程
- 从两个有序数组的并集中寻找第k小元素
- iOS开发拓展篇-XMPP简单介绍
- 使用delphi+intraweb进行微信开发5—准备实现微信API,先从获取AccessToken开始
- Deployed application at context path /xxx but context failed to start
- LeetCode 14 Longest Common Prefix
- 网络中IP数据报传输的过程
- windows7 64位安装mysql 5.7.11 zip压缩版
- 水洼
- LeetCode 85. Maximal Rectangle
- UCloud上LAMP小型网站搭建与测试
- FTP客户端
- HTML学习笔记(五)表格
- Linux OS基本命令和操作
- 整数的分划问题