在学习网络通信基础的时候,发现快递公司需要解决的问题也正是网络通信需要解决的。当我们需要寄一个物品给朋友的时候,我们一般的流程是这样的。如图1.1
那么根据这个快递的流程图,我们可以看出快递公司需要解决以下几个问题:
- 与发件人(客户)取得联系
- 根据发件人送过来的商品进行包装并让收件人填写一些信息(这些信息必须是收件人、快递人员及发件人都能够理解)
- 将该商品进行加工、分类
- 将加工和分类后的商品交由给快递员运输(这里可以有多种运输方式,比如飞机、火车等)
- 到达收件人的目的地
- 收件人收到商品,给予快递员反馈(包含错误信息,比如商品不对),如果不对,需要返回到1或4
那么反观网络通信又需要解决哪些问题呢:
- 建立连接(如何建立连接)
- 定制传输的协议(拥有统一规格的信息,同一层的各方方能识别)
- 将需要传输的数据(来自上层)进行包装并加工、整理(OSI各层对数据的包装及加工(加入自己的信息--报头))
- 将加工后的数据进行传输到接收方(这里涉及到传输过程的差错及数据差错的控制、缓存、代理、网关、通道)
- 接收到数据后,确认数据准确无误后给予发送方一个反馈(验证机制)
- 发送方接到反馈后作出下一步的行动(重发机制等)
看了我上面的分析是否觉得真有此事咧,但事情不是绝对的,以上仅是我个人的看法。当我们知道了网络通信解决什么问题的时候,那么我们下一步就是慢慢地去了解如何去解决这些问题的。后续我会以应用层的HTTP协议通信来讲解。