计算机网络体系结构

目录

一. 三种计算机网络体系结构

二. 计算机网络体系结构分层的必要性

1.物理层

2.数据链路层

3.网络层

4.运输层

5.应用层

三. 计算机网络体系结构分层思想举例

1.主机对数据包的处理过程

2.路由器对数据包的处理过程

3.Web服务器对数据包的处理过程

4.Web服务器给主机发送HTTP相应报文的过程


@TOC

一. 三种计算机网络体系结构

       说是三种计算机网络体系结构,但实际上只有两种,一种时OSI体系结构模型,另一种是TCP/IP体系结构模型。

        而适合教学的模型则是将TCP/IP分层模型中的网络接口层细分为数据链路层和物理层,这就是第三种结构模型。

二. 计算机网络体系结构分层的必要性

        分层是计算机网络体系结构最重要的思想。通过分层可以把庞大且复杂的问题转化成若干个细小的问题,接下来从下到上依次讲解。

1.物理层

首先是两个电脑用一个链路连接起来的情况,这时候我们得想到底应该考虑什么问题。

(1)采用什么传输媒体

        在我们的电脑上存在许多的线,这些线就是我们用来传输媒体,例如:同轴电缆,双绞线电缆,光纤,光缆等。

(2)采用什么物理接口

     在我们的主机和路由器等网络设备中,存在许多的用于连接传输媒体的接口,这些就是采用的物理接口。

(3)采用什么信号

    现在有了传输媒体和物理接口,我们就可以进行传输信号,想想计算机的底层使用的二进制,所以我们传输的信号也肯定是二进制信号0,1。用低电平表示0,用高电平表示1。

2.数据链路层

   上个小块,我们只是构思了两台电脑,一条链路的情况,但实际过程中,一个使用的计算机网络是有多台电脑进行连接的,在这个过程中,我们需要考虑的问题又有哪些呢?

(1)如何识别网络中的各个主机

       假如主机A要给主机B发送数据,表示数据的信号会通过总线传输到总线上的每一台主机上,那么主机B如何知道该信号是发送给自己的需要接收,主机C又是如何知道这信号不是给自己的需要拒绝呢?这就是要解决如何识别网络中各个主机的问题。

(2)如何区别出地址和数据

       接着上个问题,主机如何知道自己收到的信息是需要自己接收还是拒绝呢?根据数据附加的目的地址和源地址,当其他主机收到后,根据目的地址和自身地址是否匹配,来决定是否接受该数据,还可以通过源地址知道这是从哪台主机传输过来的数据。

    (注意给传输的数据添加目的地址和源地址需要收发双方约定好数据的封装格式,发送方将待发送的数据按照事先约定的格式进行封装(即,在数据前面添加源地址,目的地址以及其他一些控制信息的首部 ),然后将封装后的数据包发送出去,接收方收到数据包后,按照事先约定好的格式对其进行解封 )

(3)如何协调各主机争用总线

      接上上一个问题,如果出现了多组发送方向接收方进行数据传输,难免会出现信号冲突,这时候如何协调各主机争用总线,就非常重要。

3.网络层

        在解决完物理层还有数据链路层的问题之后,我们就可以实现数据包在一个网络上传输了。但是我们的网络应用绝对不仅仅在一个单独的网络中。例如,我们现在使用的英特网,就是由无数的路由器和网络·互连起来的,仅仅解决物理层和数据链路层问题,是不够的。

需要考虑的问题有:

(1)标识网络和网络中的各主机 (网络和主机共同编址)

(2)路由器如何转发分组和进行路由选择

4.运输层

需要考虑的问题:

(1) 如何标识主机中与网络通信相关的应用进程。

(2) 如何处理传输差错。

5.应用层

 (1) 通过应用进程间的交互来完成特定的网络应用

 (2)进行会话管理和数据表示

三. 计算机网络体系结构分层思想举例

用户在主机中使用浏览器访问Web服务器的过程如下:

1.主机对数据包的处理过程

( 1 )应用层:根据HTTP协议的规划,构建一个HTTP请求报文,用来请求Web服务器执行相应的操作。,应用层将构建好的HTTP请求报文向下交付给运输层。

( 2 ) 运输层:给HTTP请求报文添加一个TCP首部,将其封装成TCP报文段。TCP首部的主要作用是区分应用进程和实现可靠传输。运输层将封装好的TCP报文段向下交付给网络层。

( 3 ) 网络层:为TCP报文段添加一个IP首部,将其封装成IP数据报,IP首部的主要作用是IP寻址和路由。网络层将封装好的IP数据报向下交付给数据链路层。

( 4 ) 数据链路层:为IP数据报添加一个首部和一个尾部,将其封装成帧。帧首部和尾部的主要作用是MAC寻址和帧校验。数据链路层将封装好的帧向下交付给物理层。

( 5 )物理层:并不认识帧的结构。仅仅将其看作比特流,以便将比特流转换成相应的电信号进行发送。对于以太网,物理层还会在比特流前面添加前导码,目的是是接受方的时钟同步,并做好接受准备。

2.路由器对数据包的处理过程

 

(1)(接收口的)物理层:将收到的电信号转换成比特流,并去掉前导码,然后将帧向上交付给数据链路层。

(2)(接收口的)数据链路层:去掉帧的首部和尾部后,将IP数据报向上交付给网络层。

(3)网络层:网络层从IP数据报的首部中提取出目的IP地址,根据目的IP地址根据自己的转发表,以便决定从哪个接口转发给IP数据报,与此同时,还要对首部中的某些字段值进行相应的修改,然后将该IP数据报向下交付给数据链路层。

(4)(转发口的)数据链路层:为IP数据报添加一个首部和一个尾部,将其封装成帧,然后将帧向下交付给物理层。

(5)(转发口的)物理层:将帧看作比特流,给其添加前导码后转变成相应的电信号发送出去。

3.Web服务器对数据包的处理过程

4.Web服务器给主机发送HTTP相应报文的过程

       Web服务器的应用层收到HTTP请求报文后执行相应的操作,然后给主机发送包含有浏览器请求内同的HTTP相应报文。接下来的过程和浏览器发送HTTP请求报文的过程类似,方向相反。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值