趣谈网络协议笔记-二(第五讲)

趣谈网络协议笔记-二(第五讲)


目录

第二模块 底层网络知识讲解:第二层到第三层

第5讲 | 从物理层到MAC层:如何在宿舍离自己组网完联机游戏

第6讲 | 交换机与VLAN:办公室太复杂,我要回学校

第7讲 | ICMP与ping:投石问路

第8讲 | 世界这么大,我想出网关:欧洲十国游与玄奘西行


前言

你的时间是有价值的,而且价值很高。
到第二模块的时候我明白了,每个小节结尾的问题主要是为了承上启下。
所以很多问题往往可以通过看下一节的方式来回答。也就是所谓的“预知后事如何,请听下回分解“!
我渐渐地明白了,人在做任何事情的时候都会将自己的主观意图隐性地添加进去,就算主观上对此有强烈的抑制性想法也一样。
所以,在看任何优秀的书籍的时候,我渐渐地就能理解到这点,从这点来看,我可能渐渐地更加会学习了一些。优秀的书籍永远是循序渐进的,将知识逐步地放到书籍中慢慢地呈现给你。尽管知识本身并不能完美地实现一种拓扑结构,但是,我相信,所有力图写出一本优秀的书籍或者优秀的文章的作者都希望自己能够相对严谨地,更具有逻辑性的进行自己知识的表达和归纳。
所以,后续的阅读过程中对于我阅读的每一本书,我都希望自己在阅读完一个章节后切实地问自己,这个章节为我带来了什么?否则知识仅仅是一盘散沙而已,无法构建成一棵参天大树,很快就会被自己所遗忘。


问题

第五讲

  1. 两台电脑连接组成内网该如何连接?
    通过电脑连电脑的方式进行连接。这种方式就是一根网线有两个头。一头插在一台电脑上的网卡上。但是在当时,普通的网线这样是通不了的,所以水晶头要做交叉线,用的就是所谓的1-3,2-6交叉接法。
    水晶头的第1,2和第3,6脚,他们分别起着收,发信号的作用。将一端的1号和3号线,2号和6号线互换一下位置,就能够在物理层实现一端发送的信号,另一端能收到。
    现在我们日常生活中能直接买到的网线都是已经帮你安装好水晶头的,但是大学中也只有实验课上会让你进行操作,但是很遗憾的是,我的大学里老师读完ppt就让我们自己操作了,也不会告诉我们为什么。
  2. 为什么会出现hub?
    当需要互相连接的电脑有很多的时候,总不可能每出现一台新的机器,就特地去拉n条网线到已经有的电脑上,所以需要一个中间人,所有电脑发送的信息都发送到这个中间人这里,然后这个中间人将信息发送到所有其他电脑上。
  3. 数据链路层如何确定这个包发送给谁?谁应该接收?
    [image:9443875F-E3D6-419F-BC24-09E46E084E25-1669-0000A4D29B22FE79/8072e4885b0cbc6cb5384ea84d487e41.jpg]
    MAC报头前12个字节就存储着目标MAC信息和源MAC信息,表示着发送方和接收方。
  4. 数据链路层大家都在发,会不会发生混乱?有没有谁先发,谁后发的规则?
    不会出现混乱。MAC的全称是Medium Access Control,即媒体访问控制。控制什么?其实就是控制在往媒体上发数据的时候,谁先发,谁后发的问题。防止发生混乱。方法有很多,常见的有信道划分,轮流协议,随机接入协议。
  5. 如果发送的时候出现了错误,怎么办? [image:5ABEF62B-B015-4EBB-B68E-7BFCD8D8FB57-1669-0000A647CD8A373B/8072e4885b0cbc6cb5384ea84d487e41.jpg]
    第二层的最后面是CRC,也就是循环冗余检测。通过XOR异或的算法,来计算整个包是否在发送的过程中出现了错误,主要解决第三个问题。也就是说通过这样的方式来判定传输过程中是否数据出现了问题。
  6. 交换机的作用?
    一台MAC1电脑将一个包发送给另一台MAC2电脑,当这个包到达交换机的时候,一开始交换机也不知道MAC2的电脑在哪个口,所以没办法,它只能将包转发给除了来的那个口之外的其他所有的口。但是,这个手,交换机会干一件非常聪明的事,就是交换机会记住,MAC1是来自一个明确的口。以后有包的目的地址是MAC1的,直接发送到这个口就可以了。
    当交换机作为一个关卡一样,过了一段时间之后,就有了整个网络的一个结构了,这个时候,基本上不用广播,全部可以准确转发。当然,每个机器的IP地址汇编,所在的口也会变,因为交换机上的学习的结果,我们成为转发表,是有一个过期时间的。

小结

  • 第二层数据链路层的作用就是确保数据能够准确地到达目标MAC地址。

  • hub的作用是物理性的,是为了解决局域网中每个机器都可能需要和其他机器相连的麻烦才发生。而交换机的作用是化学性的,是为了解决hub传输效率不高的烦恼而诞生的。

  • 数据链路层为了确保数据传输过程中的准确性,会添加名为CRC的冗余校验,冗余校验放在MAC报文的最后四个字节。

  • 最后是arp报文:
    [image:13EE629B-3BC4-45FD-A5E8-FC2E02DBF6D0-1669-0000A6B5561B9653/5ff7bcca724b8aa12b11341bb261f3de.jpg]

    这个报文的内容其实实际抓包过也很容易理解,ARP协议主要的目的是为了知道一个IP地址的具体MAC值对吧?那么需要传递的信息只需要3个就行了:

  1. 发送方的MAC地址和IP地址

  2. 接收方的MAC地址和IP地址

  3. 操作代码:你是请求还是反馈啊

    但是MAC地址和IP地址会不会随时代而发生变化呢?所以就需要传输所谓的设定,也就是MAC地址应该占几个字节啊,IP地址应该占几个字节啊。这个就是ARP报文中的硬件类型和协议类型的作用。

猜你喜欢

转载自blog.csdn.net/qq_31433709/article/details/107624632