计算机网络之绪论★知识点汇总★

计算机网络和因特网

通过自学计网,对当今世界庞大的互联网络有了更加透彻的理解,了解了构成网络的基本硬件和软件组件。从网络边缘开始,考察在网络中运行的端系统和网络应用;接着研究计算机网络的核心,查看传输数据的链路和交换机,以及将端系统和网络核心相连接的接入网和物理媒体。此外还了解了计算机网络中数据的时延、丢包和吞吐量等,建立了一个端到端吞吐量和时延的简单定量模型。当然还有一些计算机的协议分层和服务模型以及一些网络攻击的问题。

1 因特网构成描述

  • 所有的智能手机、平板电脑、网络电视、Web相机、数字相框等与因特网相连的这些设备都被称为主机(host)端系统(end system)
  • 端系统通过通信链路(communication link)分组交换机(packet switch)连接到一起。
    1. 通信链路由同轴电缆、铜线、光纤和无线电频谱等物理媒体组成,不同的链路有不同的数据传输速率。端系统间的传输的数据称为分组(packet)
    2. 分组交换机从它的入通信链路接收到达的分组,从出通信链路转发该分组,最典型的类型为路由器(router)链路层交换机(link-layer switch)
    3. 有一个很形象的的比喻:分组类似于卡车,通信链路类似于高速公路和公路,分组交换机类似一立交桥,而端系统类似于不同地方的建筑物。
  • 端系统通过因特网服务提供商(Inter Server Provider, ISP)接入因特网,包括住宅ISP、公司ISP、大学ISP、以及在其他公共场所提供WiFi接入的ISP。每个ISP是由多个分组交换机和多段通信链路组成的网络。
  • 端系统、分组交换机和其他因特网部件都要运行一系列协议(protocol),这些协议控制因特网中信息的接受和发送。最主要的有TCP(Transmission Control Protocol,传输控制协议)IP(Internet Protocol,网际协议),因特网的主要协议统称为TCP/IP。
  • 从应用程序提供服务的基础设施的角度来描述因特网:这些应用程序包括电子邮件、Web冲浪、即时讯息、社交网络、IP语音(VoIP)、分布式游戏、对等(peer-to-peer)文件共享、因特网视频等等,均成为分布式应用程序(distributed application).
  • 与因特网相连的端系统提供了一个应用程序编程接口(Application Programming Interface, API),该API规定了运行在一个端系统上的软件请求因特网基础设施向运行在另一个端系统上的特定目的软件交付数据的方式。
  • 一个协议定义了在两个或多个通信实体之间交换的报文格式和次序,以及报文发送和/或接受一条报文或其他事件所采取的动作。

2 网络边缘

  • 由于与因特网相连的计算机和其他设备处于网络的边缘,故被称为端系统;因特网的端系统包括了桌面计算机(桌面PC、Mac、和Linux盒)、服务器(Web和电子邮件服务器)、移动计算机(智能手机、平板电脑)等。
  • 端系统也被称为主机,因为它们运行应用程序,可以理解为主机=端系统;而主机有时又被进一步划分为客户(client)服务器(server).
  • 以上描述了"网络边缘"的应用程序和端系统,接下来考虑接入网(access network),它指将端系统连接到其边缘路由器(edge router)的物理链路。边缘路由器是端系统到任何其他远程端系统的路径上的第一台路由器。下面根据适用接入网的不同环境介绍三种不同类型的接入链路。
    1. 家庭接入。宽带住宅接入有两种最流行的类型:数字用户线(Digital Subscriber Line, DSL)和电缆。
    • 数字用户线即家庭电话线,它同时承载了数据和传统的电话信号,利用频分复用技术将上下行通道及双向电话信道以不同的频率区分开;DSL标准定义了12Mbps下行和1.8Mbps上行传输速率,以及24Mbps下行和2.5Mbps上行传输速率。
    • 电缆因特网接入(cable Internet access),它利用了有线电视公司现有的有线电视基础设施。此外,电缆因特网接入需要电缆调制解调器(cable modem)。在电缆头端,电缆调制解调器端接系统(Cable Modem Termination System, CMTS)起到如同DSL网络的DSLAM类似的功能,即将来自下行家庭中的电缆调制解调器发送的模拟信号转回数字信号形式。电缆因特网接入的一个重要特征是共享广播媒体。
    • 光纤到户(Fiber to the Home, FTTH),它表示从本地中心局直接到家庭提供了一条光纤路径。目前有两种光纤分布体系结构:主动光纤网络(Active Optical Network, AON),从本地中心局到每户设置一根光纤;被动光纤网络(Passive Optical Network, PON), 从中心局引出的一根光纤由许多家庭共享,知道相对接近这些家庭的位置,该光纤才分成每户一根。
    1. 企业(家庭)接入:以太网和WiFi. 通常用局域网(LAN)将端用户连接到边缘路由器,但是以太网到目前为止是当前公司、大学和家庭网络中最为流行的接入技术。
    2. 广域无线接入:3G和LTE. 应用了与踢动电话相同的基础设施,通过蜂窝网提供商运营的基站来发送接收分组。
  • 对于一个比特的传输,是通过跨越一种物理媒体(physical medium)传播电磁波或光脉冲来发送该比特。该物理媒体包括双绞铜线、同轴电缆、多模光纤缆、陆地无线电频谱和卫星无线电频谱。

3 网络核心

通过网络链路和交换机移动数据有两种基本方法:电路交换(circuit switching)分组交换(packet switching).

3.1 分组交换

  • 为了从源系统向目的端系统发送一个报文,源将长报文划分为较小的数据块,称之为分组(packet). 在源和目的之间,每个分组都通过通信链路和分组交换机(packet switch)传送。
  • 存储转发传输(store-and-forward transmission)是指在交换机能够开始向输出链路传输该分组的第一个比特之前,必须接受到整个分组。
  • 路由器从与它相连的一条通信链路得到分组,将其向与他相连的另一条通信链路转发,路由器通过转发表将分组的目的地址映射成为输出链路。

3.2 电路交换

  • 在电路交换网络中,在端系统间通信会话期间,预留了端系统间通信沿路径所需要的资源(缓存、链路传输速率). 链路中的电路是通过频分复用(Frequency-Division Multiplexing, FDM)时分复用(Time-Division Multiplexing, TDM)来实现的。

总之,分组交换的性能优于电路交换的性能。电路交换不考虑需求,而预先分配了传输链路的使用,这使得已分配而并不需要的链路时间未被利用;分组交换按需分配链路使用,目前趋势无疑是朝着分组交换方向发展。

4 分组交换中的时延、丢包和吞吐量

4.1 分组交换网中的时延概述

  • 当分组从一个结点(主机或路由器)沿着这条路径到后继结点(主机或路由器),该分组在沿途的每个结点,经受了几种不同类型的时延。这些时延最为重要的是结点处理时延(nodal processing delay)、排队时延(queuing delay)、传输时延(Transmission delay)和传播时延(propagation delay),这些时延总体累加起来是结点总时延(total nodal delay).
    1. 处理时延:检查分组首部和决定该分组导向何处所需要的时间、检查比特级别的差错时间等;处理时延通常是微妙或更低的数量级;
    2. 排队时延:在队列中,当分组在链路上等待传输时,经受排队时延;排队时延通常是毫秒到微妙级;
    3. 传输时延:分组交换网中最常见的方式是先到先服务传输,即仅当所有已经到达的分组被传输后,才能传输刚到达的分组。用L比特表示该分组的长度,用R(b/s)表示从路由器A到路由器B的链路传输速率,则传输时延是L/R;传输时延通常在毫秒到微秒量级。
    4. 传播时延:一旦一个比特被推向链路,该比特需要向路由器B传播。从该链路的起点到路由器B传播所需要的的时间是传播时延。在广域网中,传播时延为毫秒量级。
    5. 传输时延和传播时延的比较:传播时延是路由器将分组推出所需要的时间,它是分组长度和链路传输速率的函数;而与两台路由器之间的距离无关;另一方面,传播时延是一个比特从一套路由器响铃一套路由器传播所需要的时间,他是两台路由器之间距离的函数,而与分组长度或链路传输速率无关。
  • 令dproc、dqueue、dptrans、dprop分别表示处理时延、排队时延、传输时延和传播时延,则结点的总时延由下式给定:
    dnodal=dproc+dqueue+dtrans+dprop

4.2 排队时延和丢包

  • 令a表示分组到达队列的平均速(a的单位是分组/秒,即pkt/s), R是链路传输速率(bps/s),假定所有分组都是由L比特组成的,则比特到达队列的平均速率是La/bps;比率La/R被称为流量强度(traffic intensity),在设计系统时流量强度不能大于1.
  • 一条链路前的队列只有有限的容量,当该容量被之前的分组占满时,路由器将会丢弃(drop)之后到达的分组, 即该分组将会丢失(lost);丢失的分组可能基于端到端的原则重传,以确保所有的数据最终从源传送到目的地。

4.3 端到端时延

  • 考虑从主机A到主机B跨越计算机网络传送一个大文件,在任何时间瞬间的瞬时吞吐量(instantaneous throughput)是主机B接收该文件的速率(以bps计);如果该文件由F比特组成,主机B接收到所有F比特用时T秒,则文件传送的平均吞吐量(average throughput)是F/T bps.
  • 当今因特网中对吞吐量的限制因素通常是接入网。
  • 吞吐量取决于数据流过的链路的传输速率。

5 协议层次及其服务模型

  • 目前我们已经看到,因特网有许多组成部分:大量的应用程序和协议、各种类型的端系统、分组交换机和各种类型的链路级媒体。对于这个庞大、复杂且需要不断更新的网络系统,改变服务的实现而不影响该系统其它组件的分层是分层的一个重要优点。
  • 网络设计者以分层(layer)的方式组织协议以及实现这些协议的网络硬件和软件。
  • 将网络各层的所有协议称为协议栈(protocol stack), 因特网的协议栈由5个层次组成:应用层、运输层、网络层、链路层、物理层;知识体系可以采用自顶向下方法(top-down approach)来搭建,即首先处理我们接触最多的应用层,然后逐个向下处理。因特网协议栈和OSI参考模型如下图所示。

    1. 应用层:应用层是网络应用程序及他们的应用层协议存留的地方。因特网的应用层包括许多协议,如HTTP、SMTP、FTP、DNS等;应用层协议分布在多个端系统上,一个端系统中的应用层程序使用协议与另一个端系统中的应用程序交换信息的分组;位于应用层的信息分组称为报文(message).
    2. 运输层:因特网的运输层在应用程序端点之间传送应用层报文,有两个运输层协议即TCP和UDP;运输层分组称为报文段(segment).
    3. 网络层:因特网的网络层负责将称为数据报(datagram)的网络层分组从一台主机移动到另一台主机。因特网的网络层包括了IP协议和路由选择协议。因为仅有一个IP协议,所有具有网络层的因特网组件必须运行IP协议,故常把网络层简称为IP层,这反映了IP是将因特网连接在一起的粘合剂的事实。
    4. 链路层:因特网的网络层通过源和目的地之间的一系列路由器路由数据报。链路层的例子包括以太网、WiFi和电缆接入网的DOCSIS协议。通常将链路层分组称为帧(frame).
    5. 物理层:物理层的任务是将链路层的分组帧中单位一个一个比特从一个结点移动到下一个结点。该层协议与链路相关,并且与链路的实际传输媒体相关。
  • 因特网协议栈不是唯一的协议栈,国际标准化组织(ISO)提出计算机网络应组织为7层,称为开放系统互联(OSI)模型,从上图可以看到,该7层为应用层、表示层、会话层、运输层、网络层、数据链路层和物理层;可以看到它比因特网协议栈多出表示层和会话层。表示层的作用是使通信的应用程序能够解释交换数据的含义,包括数据压缩和数据加密以及数据描述;会话层提供了数据交换定界和同步功能,包括了建立检查点和恢复方案的方法。
  • 封装(encapsulation):在发送主机端,应用层报文(application-layer message)加上运输层首部信息构成运输层报文段(transport-layer- message);运输层报文段增加网络层首部信息产生网络层数据报(network-layer datagram);数据报增加链路层首部信息创建链路层帧(link-layer frame)。即在每一层,一个分组具有两种类型的字段:首部字段和有效载荷字段(payload field),有效载荷字段通常来自上一层的分组。

6 面对攻击的网络

  • 在当今网络上有一些恶意软件(malware)可能会影响我们的设备,它可能会删除我们主机上的文件、安装间谍软件来收集主机的隐私信息;很多恶意软件是自我复制(self-replication)的,它能够以病毒或蠕虫的形式扩散。
    1. 病毒(virus)是一种需要某种形式的用户交互来感染用户设备的恶意软件。典型的例子是包含恶意可执行代码的电子邮件附件,该电子邮件附件是自我复制的,一旦执行,该病毒可能会向用户地址簿上的每个接受党发送一个具有相同恶意附件的相同报文。
    2. 蠕虫(worm)是一种无需任何明显用户交互就能进入设备的恶意软件。例如,用户运行了一个某攻击者能够发送恶意软件的脆弱网络应用程序,在某种情况下,没有用户的任何干预,该应用程序可能从因特网接受任意软件并运行它,生成蠕虫。
  • 攻击服务器和网络基础设施:拒绝服务攻击(Denial-of-Servive(Dos)attack),Web服务器、电子邮件服务器、DNS服务器和机构网络都能成为Dos攻击的目标。
  • 嗅探分组:在无线传输设备的附近放置一台被动的接收机,该接收机就可以得到传输的每个分组的副本,记录每个流经的分组副本的被动接收机被称为分组嗅探器(packet sniffer).
  • IP哄骗(IP spoofing):生成具有任意源地址、分组内容和目的地址的分组,然后将这个人工制作的分组传输到因特网中,将具有虚假源地址的分组注入因特网的能力被称为IP哄骗。

在这里我们涉及了很多的大量的背景知识和名词,如果看起来有些望而生畏,请不要着急,本次总结已经搭建好了整个计算机网络的知识体系架构,接下来将分别进入每一个分支,从因特网协议栈的顶部,即应用层开始,逐渐向下学习每一层的协议栈。

Wireshark Lab

“Tell me and I forget. Show me and I remember. Involve me and I
understand.”

“不闻不若闻之,闻之不若见之,见之不若知之,知之不若行之。”

Wireshark是一个运行在Windos、Linux/Unix和Mac计算机上的免费分组嗅探器,用来观察执行协议实体之间交换的报文,也就是我们常说的捕包工具。接下来介绍第一个捕包实验,该实验主要内容为安装一个Wireshark的副本,访问一个Web站点,俘获并检查在Web浏览器和Web服务器之间交换的协议报文。

欢迎关注【OAOA】

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值