计算机网络
本次总结基于中国大学MOOC网(中国人民解放理工大学)网络技术与应用课程总结。
交换主要是为了实现网络终端之间的数据通信,一共需要两步,第一步是建立连接通道,第二步是完成传输过程。
- 电路交换
交换的本质含义是什么?
第一种方式是每台主机都两两互联,这样做的有点是终端可以和所有其他终端通信。但是建立信道成本太大。
第二种方式是通过电路交换机进行连接,每台终端都连接到电路交换机上,当它们之间进行通信的时候才建立内部连接。完成通信后释放连接。这样做的优点是按需建立连接,无需控制传输过程。缺点是独占两个终端的信道,不能保证多终端之间的通信。也就是说这个通道只能已经建立连接的两个终端使用,其它的有通信需求的只能等待他们释放链路。
- 虚电路交换。
根据上述的电路交换所遇到的问题,需要解决通信链路利用率过低的问题。那么我们就共享通信链路。
如果共享通信链路我们又会遇到新的问题,
1.如何转发数据问题?
在电路交换中不存在如何转发的问题,因为在进行数据传输之前需要先建立好通道,但是共享链路是存在多个数据从一个通道走的,它们并不知道自己改往哪里转发,因此1.需要在数据中添加控制信息,2.需要在交换机中添加转发表。基于以上条件再在传输的数据添加控制信息,这样交换机就可以去判断通过哪些端口进行转发了。
在虚电路中交换机的转发表由 标识符 数据输入:端口A,数据输出:端口B,这种方式绑定一个固定的终端通信线路。
2.拥塞控制的问题。
如果多个终端同时转发数据就会产生拥塞,在这种情况下我们在交换机中添加转发队列,在交换机中将物理信号转化成数据打开标识符并转发到对应的端口进行传输。如下图所示,你想象用分组交换机替换电路交换机。这样的话就可以进行拥塞控制了。
- 数据包交换
其实虚电路交换也是有问题的,为什么这样说呢,因为虚电路交换牵扯的问题是,在交换机内部提前建立好虚电路,还是在通信前动态建立。如果是提前建立好,那么就会浪费大量空间存储对应的转发表,如果动态建立不需要转发表但是建立比较慢,传输时间变长了。
对虚电路转发表进行修改,不在标识唯一的传输路径了,仅仅标识目的终端和去目的终端的出口,这样会大量节省抓发表的存储空间。
对虚电路的控制信息进行修改,把标识符信息修改为源地址和目的地址这样我们能够通过目的地址去找到出口,接收端也能够通过源地址了解是谁给它发送的信息。一举两得。