随笔 - 34, 文章 - 0, 评论 - 115, 阅读 - 45397
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

套接字socket 的通信原理 之迷惑

Posted on   小小行者  阅读(3145)  评论(4编辑  收藏  举报

   最近好长时间 都在 寻找 网络通信 时的 一个问题。服务器 与 客户机通信 其实 已经发展的相当纯熟了。

  客户机 与  服务器 要完成通信,两者如何 能唯一识别对方呢? 对于服务器而言  有IP【公网IP】,这是无可厚非的,这个ip是 唯一的。 但对于 客户机 就不尽如此了。如果 客户机处于 局域网内。大家知道 局域网内部的 所有机子共用一个ip,所以服务器要识别与 客户机的 话靠什么呢?

  此时 开始研究 套接字,也翻阅了 一些资料 都说  套接字 是对网络通信 所 封装的一个层。在编码中,发现套接字 里面 用来 上述 我说的 唯一识别对方的 还是靠 ip和 端口。此时 我的 迷惑 仍然不解。在此,真心感谢 看到这篇文章的 师兄弟,师姐妹,导师或者大师们,恭候大家 指导,无论留下一个字或者更少,都真诚感谢。

  【碰到问题 首先 自己 有解决问题的 心里,以下是 翻阅资料看看 网络通信  的稍微 更具体的 实现原理.。网络通信中 一个机子A向  另一个 机子 B 发送数据包时,首先  A 必须知道 B的  IP ,A的 数据包在进行包的封装 时  就封装了  A的ip,mac  B的 ip,A必须知道B的mac 才可以进行数据包的发送。(对于A而言其知道自己的 ip ,mac 是很容易的。但要是知道B的 mac改怎么办呢?)此时  用了个ARP协议,开始通过一级级的  路由寻找,寻找B的 mac,期间如何 一级级的 寻就不多说了,最终 寻到了  B所在的  那个最小的 路由局域网内了,此时ARP数据包里面的数据是:B的ip ,B所在路由器的mac,此时 B的ip 跟路由共用。此时路由进行如何的操作 才可以  正确 把B的 mac 给封装进数据包,而返回到 A那去呢? 迷惑。迷惑啊。。。希望路过的 大师或者兄台们 指导之。多谢!

     或者 发送我的 邮箱,感激之  !  

  个人QQEmail:  455803591@qq.com

编辑推荐:
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
阅读排行:
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?
· 展开说说关于C#中ORM框架的用法!
点击右上角即可分享
微信分享提示