IP层的目标地址从哪里来

看到有人有这样的疑问“...根据OSI七层模型的概念,网络层的IP报头中的数据实际上应该就是传输层TCP/UDP数据包。但对于TCP/UDP包来说,只有源/目的端口的信息,没有源/目的IP地址的信息的。那么网络层的IP报头中源/目的IP地址的信息中如何得来的呢? ...”

其实这里是混淆了几个基本概念,协议(protocol), 接口 interface(service, primitive). 咱们说TCP包,TCP包头等都是在两个机器之间的同一层怎么通信(约定,也即协议(protocol))的环境下说的,也即是在传输线路上数据的格式。而说一个机器上TCP要传给IP什么,则是IP层和上层之间的接口问题,或者说IP层给上层提供的服务(service)。这里TCP传给IP的,那就不是(不只是)标准上规定格式的那个TCP包。

 可以这么理解。IP层能干什么事呢?你给IP层 数据和目标地址,它会将数据往目标送。那么TCP想让IP层给它传数据,那么除了给IP一个TCP包之外,自然也要告诉它IP地址,至于这个IP地址怎么来,自然要从TCP上面的应用中来。


IP和上层的接口随实现可以有不同。但IP协议RFC791上面还是给出了一些说明:
×××××××××××××××××××××××××××××××××
For example, a TCP module would call on the internet module to take a
TCP segment (including the TCP header and user data) as the data
portion of an internet datagram. The TCP module would provide the
addresses and other parameters in the internet header to the internet
module as arguments of the call.
××××××××××××××××××××××××××××××××

SS7网络中的网络层MTP3跟上层的接口也类似的有目标地址(DPC)做为参数:

MTP-TRANSFER

- 千里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值