博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
计算机网络概述一
阅读量:2429 次
发布时间:2019-05-10

本文共 2715 字,大约阅读时间需要 9 分钟。

1.1Internet概述

网络

网络是有一组具有通信能力的设备相互连接而形成。在这个定义中,设备可以是主机等

局域网

局域网(LAN)通常是私有的,连接一个办公室,大楼或校园内的一些主机。在局域网中的每台主机都具有一个标识符(一个地址),用于在局域网中唯一定义这台主机。一台主机向另外一台主机发送的数据包携带了源主机和目的主机的地址

在过去,一个网络中的所有主机都连接到一个公共的电缆上,这意味着一台主机发送另外一台主机的数据包可以被所有的主机接收到,目的接收者保存这个数据包,而其他主机丢弃该数据包。
在这里插入图片描述

广域网(WAN)

广域网也是具有通信能力的设备相互连接而形成。局域网互连主机,而广域网互联交换机,路由器,调制解调器等连接设备。目前使用的两种典型的广域网:点到点广域网和交换式广域网

  • 点到点广域网:通过传输介质连接两个通信设备
    在这里插入图片描述
  • 交换式广域网:交换式广域网具有多个端点,交换式广域网目前作全球通信的主干。我们可以说,交换式广域网是交换机连接几个点到点的广域网而形成的
    在这里插入图片描述
交换

互联网是由链路和交换机组成的,实际上,互联网是一个交换式的网络,其中一台交换机至少将两条链路连接在一起。当需要的时候,交换机需要将数据从一条链路转发到另外一条链路。交换式网络最常见的类型为电路交换网络和分组交换网络

  • 电路交换网络:两个端系统之间总是存在一条专用的连接(称为电路)
    在这里插入图片描述
  • 分组交换网络:在一个计算机网路中,两个端点之间使用被称为分组的数据块进行通信。也就是说,两台计算机之间交换的是独立的数据分组。由于分组是一个能够被存储和以后发送的独立实体,因此这种机制允许我们实施存储转发的交换功能
    在这里插入图片描述
    分组交换网络中的路由器具有能够存储和转发分组的队列
Internet

互联网是由两个或多个能够相互通信的网络组成

在这里插入图片描述

1.2协议分层

当谈到Internet时,我们总能听到第一个词汇就是协议,协议规定了发送者,接收者和所有中间设备为了高效通信需要遵循的规则。

协议分层原则

(1)第一个原则就是如果想要双向通信,那么我们需要每一层能够实现两个相反的任务,每个方向上一个。例如,第 3 层的任务就是听(在一个方向上)和说(在另一个方向上),第 2 层需要能够加密和解密,第 1 层需要发送和接收邮件。

(2)在协议分层中我们需要遵循的第二个原则是两端每一层中的两个对象应该相同

在遵循以上两个原则之后,意味着我们拥有层到层的通信,现在介绍TCP/IP(传输控制协议/互联网协议),它是由相互交互的模块组成的一个层次结构协议,每一个模块提供特定的功能,层次意味着较上层次的协议需要得到一个或多个较下层协议提供的服务支持。目前TCP/IP通常是一个5层模型:

在这里插入图片描述

TCP/IP协议簇中的层次

采用逻辑连接(逻辑连接指的是可以认为每一层有一个逻辑(想象的)连接)使我们考虑每一层的任务变得比较容易。应用层,传输层和网络层的任务是端到端但是数据链路层和物理层的任务是点到点的,其中一个跳步是一个主机或路由器,也就是说,高三层的任务范围是互联网,低两层的任务范围是链路在这里插入图片描述

另一种理解逻辑连接的方法是考虑每一层创建的数据单元。在高三层,数据单元(分组)不应该被任何路由器或链路层交换机改变。在低两层,主机创建的分组仅仅被路由器改变,链路层交换机不改变它们。

接下来我们看一看与设备相关的每一层之下的对等体(指的是传输的对象相同)

注意,尽管网络层的逻辑连接在两个主机之间,但是由于一个路由器在网络层对分组(指的是数据块)进行分片,并且发送的分组比接受的多,因此在这种情况下,对等体只存在于两个跳步之间
在这里插入图片描述

  • 应用层应用层的通信处于两个进程(该层正在运行的两个程序)。进程到进程之间的通信就是应用层的任务。**超级文本传输协议(HTTP)**是访问万维网的载体。**简单邮件传输协议(SMTP)**是电子邮件服务的主要协议。**文件传输协议(FTP)**用于将文件从一台主机传输到另外一台主机
  • 传输层:传输层的逻辑连接也是端到端的。源主机的传输层从应用层得到消息,封装成传输层的分组(分组也称为段或者用户数据报),然后进行发送。通过逻辑连接,分组到达目的主机的传输层。传输控制协议(TCP)是一个面向连接的协议,它在传输数据之前,首先在两台主机的传输层之间建立一条逻辑连接。TCP协议在两个TCP层之间创建一个管道,以便传输字节流。TCP协议提供流量控制,差错控制,拥塞控制。另外一种常见的协议是用户数据报协议(UDP)。每个用户数据报是一个独立的实体,它和前一个或后一个用户数据报没有关系
  • 网络层:网络层负责在源计算机和目的计算机之间创建一个连接,网络层的通信是主机到主机的。可是,由于从源主机到目的主机可能存在多个路由器,因此路径上的路由器负责为每个分组选择最好的路径。我们可以说网络层负责主机到主机的通信,并且指挥分组通过合适的路由器
  • 数据链路层:我们知道一个互联网是多个链路(LAN和WAN)通过路由器连接而构成。从主机传输数据报到目的地可能存在多个交叠的链路集。路由器负责选择最好的链路进行传输。当路由器定好需要传输的下一条链路后,数据链路层接管这个数据报并使它穿过这条链路。
封装和解封

在Internet协议分层中,一个重要的概念就是封装/解封装。

在这里插入图片描述
源主机的封装:

  1. 在应用层,交换的数据称为消息。消息通常不含任何头部和尾部,消息会被传送到传输层
  2. 传输层把这个消息作为有效载荷,该载荷是传输层应该关注的负载。传输层在有效载荷基础上增加传输层头部,其结果为一个传输层分组。该分组在TCP协议中称为段,在UDP中称为用户数据报。然后传输层传递该分组到网络层
  3. 网络层把传输层分组作为数据或有效载荷,并且在该有效载荷上添加自己的头部。头部包括源和目的主机的地址等,其结果为一个称为数据报的网络分层,然后,网络层传递这个分组到数据链路层
  4. 数据链路层把网路层分组作为数据或有效载荷,并且添加上自己的头部。该头部包含主机或下一跳步(路由器)的链路层地址。其结果称为帧的链路层分组,该帧被传递到物理层进行传输

路由器的解封装和封装

由于路由器连接两个或多个链路,因此在路由器中我们即需要解封装也需要进行封装:

  1. 在在比特集被投递到数据链路层后,这一层从帧中解封装出数据报并将它投递到网络层
  2. 网络层只检查数据报头部的源地址和目的地址,查阅它的转发表以寻找该数据报将被投递
    到的下一跳步
    。除非数据报太大以至于不能通过下一链路时需要对其进行分片,数据报的内容不应该被网络层改变。然后,数据报被传递到下一链路的数据链路层。
  3. 下一链路的数据链路层将数据报封装成一个帧,将其传递到物理层进行传输
地址在这里插入图片描述

转载地址:http://cljmb.baihongyu.com/

你可能感兴趣的文章
太真实!深刻解读论文里的话术| 每日趣闻
查看>>
拿来就能用!Python 每天定时发送一句情话 | 原力计划
查看>>
Java“拍了拍”你,面试其实没那么难...
查看>>
帅爆了!3个月0基础转型头条数据分析师,他做对了什么?
查看>>
程序员:我受够了!不想再在小厂里干Java了!
查看>>
厉害!国内大学生计算机编程第一人,一人挑战一个队,百度最年轻 T10,现创业自动驾驶...
查看>>
研发团队来了高颜值的妹子,这结局万万没想到 | 每日趣闻
查看>>
太难了!开源项目如何商业化?
查看>>
谷歌排名第一的编程语言,死磕它这两点,小白也能学的会!不信你看!
查看>>
程序员掉头发的原因找到了 | 每日趣闻
查看>>
腾讯:我就是那只吃了假辣椒酱的憨憨。老干妈:企鹅你可长点心吧!
查看>>
倒计时1天 | 张钹院士领衔,AI开发者大会20大论坛全攻略!
查看>>
运维工程师的日常?? | 每日趣闻
查看>>
31 道 Java 核心面试题,统统打包给你!
查看>>
太拼了:谷歌第一编程语言小白也能学会!
查看>>
三分钟黑了阿里?马云下死命令留他?吴翰清辟谣:我没黑过阿里
查看>>
如果重新一次高考,你还会选择软件专业当程序员吗? | 每日趣闻
查看>>
如何设计一个安全可靠的 API 接口?
查看>>
一年一度程序员“补课”季来袭,618 背后技术大公开!
查看>>
我和美国 AI 博士聊了聊:2020 年,这件事比存钱更重要!
查看>>