01 计算机网络概念

1 计算机网络

所谓计算机网络,是指把分布在不同地理区域的计算机用通信线路互联起来的一个具有强大功能的网络系统。通俗的说,计算机网络就是通过电缆、电话线、或无线通讯设施等互联的计算机的集合。

网络中每台机器称为节点(node)。大多数节点是计算机,此外,打印机、路由器、网桥、网关和哑终端等也是节点。

人与人之间交流需要通过语言,而计算机之间交流通信的语言,就是网络协议,当然这只是通俗的解释

计算机网络又分为局域网(LAN)和广域网(WAN)。

  • 局域网指的是在一个较小的地理范围内的各个节点互联在一起的网络,可以包含一个多个子网。
  • 广域网的连接的地理范围较大,常常是一个国家,一个洲,是为了让分布较远的局域网互联
  • Internet就是最大的广域网。

一个网络使用协议A,另一个网络使用协议B,那么这两个网络如何通信呢?

这个就好比,上海人说上海话,北京人说北京话,北京人和上海人如何交流呢,就可以通过普通话这一标准语言交流。
网络之间通信的标准语言就是TCP/IP协议。

2 OSI参考模型

在计算机网络产生之初,每个计算机厂商都有自己的网络体系结构,之间不兼容。为此,国际标准化组织(ISO)专门研究一种用于开放系统互联的体系结构(OSI):一个网络系统只要遵循OSI模型,就可以和其他任何遵循OSI模型的网络系统连接,

OSI模型把网络非为七层,分别是:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层

在这里插入图片描述
每层的功能如下:

  1. 物理层:传输信息离不开物理介质,比如双扭线和同轴电缆,但无论介质并不在OSI7层之内。有人把物理介质当作OSI的第零层。物理层的任务就是为它的上一层提供物理连接,以及规定通信节点之间的机械和电气等特性,比如规定电缆和接头的类型,传送信号的电压等。这一层上,数据作为原始的bit流传输。本层的典型设备是集线器。

  2. 数据链路层:负责在两个相邻节点间的线路上,无差错地传送以帧为单位的数据,每一帧包括一定数据的数据和一些必要的控制信息。数据链路层要负责建立,维持和释放数据链路的连接。如果在接收检测到所传数据中有差错,就要通知发送方重新发送这一帧。典型设备是交换机。

  3. 网络层:在计算机网络中通信的两个计算机可能会经过多个数据链路,也可能还要经过很多个通信子网。网络层的任务就是选择合适的网间路由和交换节点,确保数据被及时的传输到目标主机上。网络层将数据链路层提供的帧组成数据包,包中封装有网络层包头,包头中含有逻辑地址信息(源主机和目标主机的网络地址)。典型设备是路由器
    在这里插入图片描述

    • 数据链路就是有主机A到主机B经过的这一系列的连接
    • 至于为何是经过节点1,节点4还是经过其他节点,就就是说从A到B如何选择路径,这就是路由
  4. 传输层: 这一层的任务主要是根据通信子网的特性来充分利用网络资源,为两个端系统(源主机和目标主机)的 会话层提供建立,维护和取消传输连接的功能,以可靠的方式或者不可靠的方式传输数据。所谓可靠的方式,指的是保证把源主机的数据正确的送到目标主机;而不可靠的方式,则指的是不保证数据的正确送到目标主机,数据有可能丢失,或者出错。这一层,信息传输的单位是报文。

  5. 会话层:在会话层及其上面的各层,数据传输的单位不再另外命名,统称为报文。负责管理 进程之间的会话过程,即复制建立,管理,终止进程之间的会话。会话层还通过在数据中插入校验点来实现数据同步,

  6. 表示层:对上层数据进行转换,以保证一个主机的应用层的数据可以被另一个主机的应用层理解。表示层的数据转换包括对数据的加密,解密,压缩,解压和格式转换等。

  7. 应用层”:确定进程之间通信的实际用途。

如第一张图:当源主机发送数据的时候,在源主机侧,数据由上到下传递,每一层都会给传递来的数据加一个信息头,最后经过物理介质传输给目标主机,在目标主机侧,数据就由下到上传递,每一次层都先对数据进行处理,把信息头去掉,然后在先上层传输,最后到到达目标主机侧的应用层,就会还原成实际的数据。

每一次加入的信息头有着不同的内容,比如网络层加入的信息头就包括源地址和目标地址信息,传输层添加的信息头包括报文类型,源端口和目标端口,序列号和应答号等

另外,不同主机的相同层次称为对等层

对等层互相通信需要遵循一定的的规则,如通信的内容和方式,这种规则称为网络协议

3 TCP/IP 参考模型和TCP/IP协议

CP/IP 参考模型吸取了网络分层的思想,但是对网络的层次做了简化,并且在网络各层(除了主机-网络层外)都提供了完善的协议,这些协议构成了TCP/IP协议集,简称TCP/IP协议。

TCP/IP 参考模型分为4个层次:应用层,传输层,网络互连层和主机-网络层,去掉了OSI的表示层和会话层,被合到了应用层,数据链路层和物理层合并到了主机网络层

在这里插入图片描述

  1. 主机网络层: TCP/IP 参考模型没有真正提供这一层的实现,也没有提供协议,只是要求第三方实现的主机-网络层能够为上层(网络层)提供一个访问接口,使网络层能够利用主机-网络层来传递IP数据包。

  2. 网络互联层:是整个模型的和核心,把ip数据包发送到目标主机,为了尽快的发送,把原始数据分为多个数据包,然后沿着不同的路径同时传递。数据包到达的顺序可能不同,这就需要上层传输层对数据包进行重新排序,还原为原始数据。网络互联层还具备连接异构网的功能,比如连接以太网和令牌环网,而这两个是不同类型的网,具有不同的网络拓补结构,但是这两个都向网络互联层提供了统一的访问接口,向网络互联层隐藏了下层网络的差异,使得这两个网络之间可以顺利的传递数据包。网络互联层采用IP协议,它规定了数据包的格式,并且规定了为数据包寻找路由的流程。

    • 以太网:采用IEEEE802.3协议集的网络成为以太网
    • 令牌环网:采用IEEEE802.4协议集的网络成为令牌环网
  3. 传输层:使源主机和目标主机的进程可以会话,在传输层定义了两种服务质量的协议(传输控制协议TCP和用户数据报协议UDP)

    • TCP 协议是一种面向连接的可靠的协议。它将源主机发出的字节流无差错的发送给互联网上的目标主机。在发送端,TCP 协议负责把上层传送下来的数据分成报文段并传递给下层。在接收端,TCP 协议负责把收到的报文进行重组后递交给上层。TCP 协议还要处理端到端的流量控制,以避免接收速度缓慢的接收方没有足够的缓冲区来接收发送方发送的大量数据。应用层的许多协议,如HTTP、FTP 和TELNET 协议等都建立在TCP协议基础上。
    • UDP 协议是一个不可靠的无连接协议,主要适用于不需要对报文进行排序和流量控制的场合。UDP 不能保证数据报的接收顺序同发送顺序相同,甚至不能保证它们是否全部到达目标主机。应用层的一些协议,如SNMP 和DNS 协议就建立在UDP 协议基础上。
  4. 应用层: TCP/IP 模型将OSI 参考模型中的会话层和表示层的功能合并到应用层实现。针对各种各样的网络应用,应用层引入了许多协议。

4 IP

IP 网络(即在网络层采用IP 协议的网)中每台主机都有惟一的IP 地址。主机实际上有两个不同性质的地址:物理地址和IP 地址。物理地址是由主机上的网卡来标识的,物理地址才是主机的真实地址。

  • IP 是面向包的协议,即数据被分成若干小数据包,然后分别传输它们。
  • IP 网络上的主机只能直接向本地网上的其他主机(也就是具有相同IP 网址的主机)发送数据包。

4.1 IP地址的组成

IP地址由两个部分组成:IP网址和IP主机地址

  • IP网址:表示网络的地址
  • IP主机地址:表示网络中主机的地址

网络掩码是用用来确定IP地址中哪部分是IP网址,哪部分是IP主机地址。

在这里插入图片描述
每个IP网络都有自己的网址,通过路由和其他网络连接

4.2 发送数据包的过程

主机A向同一个网络上的另一个主机B 发包时, ARP会通过地址解析协议,获得对方的物理地址,然后把包发给对方。ARP 协议的运行机制为:主机A 在网络上广播一个ARP 消息:“要寻找地址为192.166.3.5 的主机”,接着,具有这个IP 地址的主机B 就会做出响应,把自身的物理地址告诉主机A。

在这里插入图片描述
当主机A 向另一个网络上的主机B 发送包时,主机A 利用ARP 协议找到本地网络上的路由器的物理地址,把包转发给它。路由器会按照如下步骤处理数据包:

(1)如果数据包的生命周期已到,则该数据包被抛弃。
(2)搜索路由表,优先搜索路由表中的主机,如果能找到具有目标IP地址的主机,则将数据包发送给该主机。
(3)如果匹配主机失败,则继续搜索路由表,匹配同子网的路由器,如果找到匹配的路由器,则将数据包转发给该路由器。
(4)如果匹配同子网的路有器失败,则继续搜索路由表,匹配同网络的路由器,如果找到匹配的路由器,则将数据包转发给该路由器。
(5)如果以上匹配操作都失败,就搜索默认路由,如果默认路由存在,则按照默认路由发送数据包,否则丢弃数据包。

4.3 端口

TCP使用端口来区分进程,端口号的范围为0 到65535,其中0 到1023 的端口号一般固定分配给一些服务。比如 FTP服务(21),SMTP(25)服务,HTTP(25)服务,135端口分配给RPC(远程过程调用)服务等等;从1024到65535的端口号供用户自定义的服务使用。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值