计算机网络整体框架理解与把握(持续更新)

 本文主要依据《计算机网络:自顶而下的算法》

 网络可以分为5层。自顶而下分别是应用层、运输层、网络层、链路层、物理层。而大多数主要关注于前三层。

 自顶而下设计,当然,最先关注的是应用层。应用层与普通用户接触最广泛。并且,网络应用是计算机网络存在的最终理由。其中,网络应用由成对的进程组成,这些进程主要通过网络互相发送报文。两个进程互相发送报文,必须通过下面的网络。每一个进程通过套接字(Socket)的软件接口向网络发送报文和接收报文。有一个形象的比喻,进程可以比作一间房子,而套接字则相当于房子的门。我们往往不关注房子内部的构造,而比较关注房子向外界传递的内容。而传输经过的第一层介质便是运输层。所以,套接字是应用层与运输层之间的接口,也被成为应用程序与网络之间的应用程序编程接口(API)。我们常常研究交付房子外面的流经过程。在程序开发人员眼中,网络体系结构是固定的。应用程序常用的两种主流结构为:客户-服务器体系与对等体系。客户-服务器体系典型特点为客户之间不互相直接通信。对等体系(P2P)则与之相反。

  由于房子向外传输的内容可以用不同的形式包装。比如可以用箱子,也可用袋子;小型的物件还可以用信封。选择什么样的形式是由传输的内容所确定。每一种形式对应于网络中有专用的术语称为“应用层协议”。应用层协议是网络应用的重要部分。往往网络程序设计时就需要思考采用什么应用层协议。常见的协议有超文本传输协议(http)、SMTP协议、POP3、IMAP等。其中具体内容不在此研究。有兴趣可以抽空研究。

 运输层与网络两者之间存在细微而重要的差别。在定义中,运输层为运行在不同主机(类似于家族)的进程(每一个房子)之间提供逻辑通信,网络层提供主机(家族)之间的逻辑通信。可以通过比喻进行理解区别。考虑古时候,有两大家族,分别位于东西海岸。每个家族中有一个邮差分别为A、B,分别负责收集每一户信件。他们收集完信件,交付给传送的邮局负责人,进行两地之间交流。在这个过程中,应用层报文对应于信封上字符,进程对应于每一户,主机对应于家族,运输层协议对应于A、B。网络层对应于骑士。当A、B生病时,可以委托给C、D。而邮局负责人负责的任务重大,这就是网络层。许多网络提供了不止一种运输层协议。但主流方式有两个。一种是面向连接的TCP,一种是提供最小服务的UDP。此处不细展开。

 通过上一个事例,可以简单区分运输层与网络层的区别。网络层为主机到主机之间的传输。个人以为是决定传输速度快慢的关键方式。将网络层拆解,可以分为数据平面和控制平面。路由便在控制平面起作用。其中具体概念此处不展开。

 在向下便为链路层。链路层设计较多物理概念与定义。运行链路层协议(第二层)的任何设备都称为节点。节点包括主机、交换机、路由器、WiFi接入点。而连接相邻节点的通信信道称为链路。此处概念常常用于拓扑构建。每一种传输方式对应于链路层协议。

物理层书上介绍较少,此处省略。

本文主要就计算机网络整体逻辑结构进行总结。其中,每个模块具体内容没有进行具体展开。具体概念需要以后自己再认真总结。


最后,添加大神写的计算机网络内容,以便加深理解

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值