【Linux 网络编程】网络的基础知识详解!

【Linux 网络编程】网络的基础知识详解!

码农世界 2024-05-30 前端 85 次浏览 0个评论

文章目录

      • 1. 计算机网络背景
      • 2. 认识 "协议"
      • 3. 协议分层

        1. 计算机网络背景

        • 网络互联: 多台计算机连接在一起, 完成数据共享;

        • 🍎局域网(LAN----Local Area Network): 计算机数量更多了, 通过交换机和路由器连接。

          • 🍎 广域网WAN: 将远隔千里的计算机都连在一起;


            2. 认识 “协议”

            🍎① “协议” 本质是一种约定 (通信双方之间 ),可以理解我们在淘宝上面买一个商品,我们收到快递后,我们收到的不止是买的商品还有一个快递单 ( 这个快递单其实就是我们双方约定好的协议,从快递单我们知道双方的寄货、收货信息, — 报文 ---- ,协议是通信信息多出来的部分 )

            协议其实就是C语言中的结构体,结构体中 填充我们需要的字段(两个结构体对象之间相互通信,所以都认识)

            🍎② 计算机之间的传输媒介是光信号和电信号. 通过 “频率” 和 “强弱” 来表示 0 和 1 这样的信息. 要想传递各种不同的信息, 就需要约定好双方的数据格式.

            🍎③ 小问题: 只要通信的两台主机, 约定好协议就可以了么?

            • 计算机生产厂商有很多;
            • 计算机操作系统, 也有很多;
            • 计算机网络硬件设备, 还是有很多;
            • 如何让这些不同厂商之间生产的计算机能够相互顺畅的通信?

              就需要有人站出来, 约定一个共同的标准, 大家都来遵守, 这就是网络协议;

              🍎④ 每层都需要有自己的协议!


              3. 协议分层

              • 🍎 打电话📞的例子:
              • 🐧 分层有什么好处呢?

                ① 分层最大的好处在于 “封装”;

                ② 分层符合 “高内聚”(层内部之间相互联系),“低耦合” (层与层之间)的特性,便于维护。

转载请注明来自码农世界,本文标题:《【Linux 网络编程】网络的基础知识详解!》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,85人围观)参与讨论

还没有评论,来说两句吧...

Top