11-网络基础知识

早期的时候,计算机通过局域网进行通信,像以太网,令牌环网,这时要解决的是两个问题,一是怎么确认在一堆0和1的信息中间的分片block,即控制器与硬盘间的通信,二是怎么确认信息是哪台机器发送的,这是通过每个设备给一个唯一的标识ID完成,在这个过程中,PARK实验室将其研究成果免费提供,其还提供了鼠标,GUI等研究成果,同样著名的还有Bell实验室。早期的网络主要是同轴线缆(闭路电视方式)连接,通过T型接口及信号终结器,以及环状线缆。但两台机器通信时,其他机器就无法通信,以为通信占用了同轴,而且发信号时说明地址(指针),其他机器可以看到,虽然不会理会,整个通信的任何时间都只能两台机器通信。在《穿越计算机的迷雾》中有关于此的更详细的描述。


后来,有了载波侦听多路访问冲突检测(Ethernet: CSMA/CD),就是先看有没有人在用,没人用马上发信号,边发信号边侦听,一旦发现发生冲突,立刻停止一段随机时间,然后重复之前的机制。这种方式是将大网络切割成小网络,但如何实现跨网络通信?通过网桥(Bridge)实现,但网桥要能识别是本地的还是远程的,如何实现这个呢?网桥里面有一个内存/闪存,记录主机的标识和在网桥里的对应接口(MAC表),并逐步演化出多端口的网桥就是交换机(Switch),现在变成每台机器直接连接到交换机。这里面还有一个问题,就是怎么建立MAC表,第一种方式,手动添加,但写死的方式不灵活,第二种,动态生成,通过学习报文发送者从哪个端口来的进行学习,但第一次一定向每台机器都发一遍,这就是广播(broadcast)的方式,但当接入较多的机器时就会有太多的广播报文,会导致效率低下。这就诞生了冲突域和广播域的概念,需要分割广播域,因此推动了路由器的产生,路由器如何隔离广播域?隔离后彼此需要通信怎么办?如何隔离广播又把必要的通信发出去?这里有个概念,介质访问控制地址(MAC: Media Access Control),有48位,分两段,前24bits由地址分配机构决定,后24bits由生产厂商自己决定,不重复即可。

 

随后,又逐步引入网络层级的概念,将大网络切割成小网络,也就是我们说的IP(Internet Protocal),作用:1.网络标记,2.网络中的主机标记。路由设备根据IP地址的网络号来完成报文转发,里面有一张表,记录网络的接口,根据目标地址取得网络地址,IP地址主要用来标记网络,虽然也可以用来进行通信,但主要还是用来地址标记,所以最终还是会转为MAC通信,首先判断是否是同一网络。我们经常看到的子网掩码,其特点是,最左边是1,最右边是0,按照计算规则,1与任何数相遇得任何数,0与任何数相遇得0,交换机确认不在同一网段,交给路由器,但也存在 ARP欺骗,即把自己伪装成网关。

 

路由器也面临一些问题,如有多条路可以走的时候,如何决定走哪条?一种判断标准是经过的路由器的数量,另一种判断标准是路线拥堵情况,这里有routing protocol和routed protocol协议。同时,报文到达主机后,通信是进程,进程间的通信就需要通过端口号,于是将IP和端口形成套接字。另外,识别到进程后还需要识别可支配的资源,如何标记资源地址?就是通过url的形式。最终形成了我们后来的分层协议TCP/IP及OSI参考模型。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值