这个主要来自谢希仁的《计算机网络》和网络课程,先记重点。
部分图和概念摘自菜鸟教程,侵删。
菜鸟教程的原文链接是这个:http://www.cnblogs.com/maybe2030/p/4781555.html。

一. 计算机网络的体系结构

1. 计算机网络概述

1.1. 计算机网络的概念、组成、功能

  • 概念:是通过通讯设备(路由器,交换机,网桥,中继器,集线器),线路(无线,有线、导向型,无导向型,双绞线,无线电波,双绞线,光纤)把多个计算机系统连接起来,由功能完善的网络软件实现资源共享信息传递
  • 组成
    1. 边缘部分(资源子网):个人电脑,智能手机等各种信息处理终端。我们直接使用。
    2. 核心部分(通讯子网):路由器等网络设备。

边缘设备之间的通信方式分为client-server(c/s,客户-服务器方式)和peer-to-peer(p2p,对等连接)方式。

  • 功能:数据处理,数据通信。

1.2. 计算机网络的分类

  • 按作用范围分类:

    1. 广域网WAN(Wide Area Network):几十~几千公里。
    2. 城域网MAN(Metropolitan Area Network):5~50km。
    3. 局域网LAN(Local Area Network):1km左右,真实可能更大,工厂或学校的局域网(校园网,企业网)。
    4. 个域网PAN(Personal Area Network):10m左右,蓝牙。
  • 按作用范围分类:

    1. 公用网
    2. 专用网
  • 拓扑结构:

    1. 星型结构
    2. 总线型结构
    3. 环形结构
    4. 树形结构

1.3. 计算机网络标准化工作及相关组织

占坑

2. 计算机网络体系结构及参考模型

2.1. 计算机网络分层结构

  • 体系结构:各层次及协议的集合组成的。
  • 功能是划分层次的基础。
  • 垂直分层的形式展开。
  • 除了物理层,其他层都是虚通信。
  • 对等层的虚通信采用各种协议。

2.2. 计算机网络协议、接口、服务等概念*

以太网,TCP,IP的协议格式要掌握(考研)。

  • 协议:为进行网络中的数据交换而建立的规则、标准或约定称为网络协议(network protocal)。有以下三个要素:
    1. 语法,即数据与控制信息的结构或格式。
    2. 语义,即需要发出何种控制信息,完成何种动作以及做出何种相应。
    3. 同步(时序),即事件发生顺序的详细说明。
  • 接口:同一个实体内相邻层之间交换信息的连接点。底层向高层由接口提供服务。
  • 服务:底层所提供的功能,通过接口提供给上层。
  • 实体:任可以发送或接受信息的硬件或软件进程。
  • 传输层对应用层提供的接口:端口号。
  • 网络层对传输层提供的接口:IP地址。
  • 链路层对网络层提供的接口:物理MAC地址。
  • 下一层对上一层是透明的,意思是上一层只能使用下一层提供的服务,而不知道其具体实现的协议(有点留了个接口的意思,感觉透明这个词有误导性啊)。
  • 传输在每一层是对等的。
  • 协议是水平的,服务是垂直对的。

2.3. ISO/OSI参考模型和TCP/IP模型*

数据链路层、网络层、传输层位于计算机内核空间。封装于内核空间。
TCP/IP模型是重点,一般提到是4层,OSI没人用。
TCP/IP独立于软硬件。

  • 物理层:比特流的透明传输。所传数据单位是比特(bit)。
  • 数据链路层:建立数据连接,使比特有意义,网络层提供可靠的数据传输,所传的数据单位是帧(framing)。有一些控制信息(差错控制,同步信息,地址信息等)。
  • 网络层:两个任务 1.选择合适的路由。2.把运输层产生的报文段或用户数据报封装成分组或包发送。
  • 传输层:两台主机中进程之间的通信提供通用的数据传输服务,由端口提供帮助。(用户编程会涉及到)
  • 应用层:应用进程之间的交互来完成特定网络应用。

二. 物理层

三. 数据链路层

只管数据链路,不考虑传输方式(4g,光纤 之类的)

1. 数据链路层的功能*

  1. 封装成帧
  2. 透明传输
  3. 差错检验

2. 组帧*

每一种链路层协议都规定了所能传送的帧的数据长度上限-最大传送单元MTU(Maximum Transfer Unit)。