zoukankan      html  css  js  c++  java
  • 菜鸟系列计算机网络——概述

    计算机网络——概述

    1. 计算机网络的定义

    “计算机网络定义”就是“什么是计算机网络”。计算机网络就是许多独立工作的计算机系统通过通信线路(包括连接电缆和网络设备)相互连接构成的计算机系统集合,或者计算机系统团体。而在这个计算机系统集合中,可以实现各计算机间的资源共享、相互访问,可以进行各种需要的计算机网络应用。

    2. 计算机网络体系结构

    OSI/RM体系结构是第一个标准化的计算机网络体系结构。它是针对广域网通信(也就是不同网络之间的通信)进行设计的,将整个网络通信的功能划分为七个层次,由低到高分别是物理层(Physical Layer)、数据链路层(Data Link Layer)、网络层(Network Layer)、传输层(Transport Layer)、会话层(Session Layer)、表示层(Presentation Layer)、应用层(Application Layer)

    > 在OSI/RM中,低三层有两方面的作用:1. 打通一条用于数据传输的网络通道;2. 为来自上层的数据提供物理的传输通道。高四层上进行的才是真正面向用户的网络应用,为各种具体的网络应用提供应用平台和端对端的数据传输通道,对低三层所构建的网络平台可以说是“视而不见”。

    TCP/IP协议体系结构(又称TCP/IP协议参考模型)是专门针对使用TCP/IP协议簇的广域计算机网络而开发的,可以说是OSI/RM的改进版本。TCP/IP协议体系结构只划分了四层,从高到低分别是:应用层(Apllication Layer)、传输层(Transport Layer)、网际互连层(Internet Layer,又称互联网层)和网络访问层(Network Access Layer)

    3. 网络体系结构各层主要功能

    3.1 物理层

    物理层是OSI/RM以及其他所有计算机网络体系结构的最底层,为所有网络/数据通信提供物理的通信线路。物理层是用来构建计算机网络通信和数据传输的通道的,相当于日常交通网络中的各种道路。该层为上层协议提供了一个传输数据的可靠的物理媒体。物理层记住两个重要的设备名称,中继器(Repeater,也叫放大器)和集线器。传输数据为比特流。

    3.2 数据链路层

    数据链路层为同一局域网内部的网络/数据通信提供点对点的数据传输通道,通过MAC地址寻址把数据转到目的节点。数据链路层的最基本的功能是向该层用户提供透明的和可靠的数据传送基本服务

    链路可分为物理链路和逻辑链路。物理链路可以看成是在物理层中相邻结点间的那段线路,而数据链路则在物理链路基础上再封装上对应的数据链路层通信协议,是可以实现数据传输的逻辑链路

    数据链路层协议又被分为两个子层 :逻辑链路控制(LLC)协议和媒体访问控制(MAC)协议。

    • 数据单位:帧
    • 基本功能:帧同步、流量控制、差错控制、链路管理
    • 两个重要设备名称:网桥和交换机

    3.3 网络层

    网络层的目的是实现两个端系统之间的数据透明传送,具体功能包括寻址和路由选择、连接的建立、保持和终止等。它提供的服务使传输层不需要了解网络中的数据传输和交换技术。如果您想用尽量少的词来记住网络层,那就是“路径选择、路由及逻辑寻址”。

    TCP/IP网络层的核心是IP协议,它是TCP/IP协议族中最主要的协议之一。IP协议非常简单,仅仅提供不可靠、无连接的传送服务。IP协议的主要功能有:无连接数据报传输、数据报路由选择和差错控制。与IP协议配套使用实现其功能的还有地址解析协议ARP、逆地址解析协议RARP、因特网报文协议ICMP、因特网组管理协议IGMP。

    • 数据单位:分组
    • 包含的主要协议
      • IP协议(Internet Protocol,因特网互联协议);
      • ICMP协议(Internet Control Message Protocol,因特网控制报文协议);
      • ARP协议(Address Resolution Protocol,地址解析协议);
      • RARP协议(Reverse Address Resolution Protocol,逆地址解析协议)。
    • 重要的设备:路由器

    3.4 传输层

    传输层”是在下面三层构建的网络平台基础上专门为通信双方构建端对端(不是点对点)的数据传输通道,使通信双方就像直接进行数据传输一样。

    传输层提供了主机应用程序进程之间的端到端的服务,基本功能如下:
    (1) 分割与重组数据
    (2) 按端口号寻址
    (3) 连接管理
    (4) 差错控制和流量控制,纠错的功能

    • 数据单位:报文或段
    • 传输层负责将上层数据分段并提供端到端的、可靠的或不可靠的传输以及端到端的差错控制和流量控制问题;
    • 包含的主要协议:TCP协议(Transmission Control Protocol,传输控制协议)、UDP协议(User Datagram Protocol,用户数据报协议);
    • 重要设备:网关。

    3.5 会话层

    会话层管理主机之间的会话进程,即负责建立、管理、终止进程之间的会话。会话层还利用在数据中插入校验点来实现数据的同步。

    3.6 表示层

    表示层对上层数据或信息进行变换以保证一个主机应用层信息可以被另一个主机的应用程序理解。表示层的数据转换包括数据的加密、压缩、格式转换等。

    3.7 应用层

    应用层为操作系统或网络应用程序提供访问网络服务的接口。

    • 包含的主要协议:FTP(文件传送协议)
    • Telnet(远程登录协议)
    • DNS(域名解析协议)
    • SMTP(邮件传送协议)
    • POP3协议(邮局协议)
    • HTTP协议(Hyper Text Transfer Protocol)

    4. 网络体系结构的数据通信原理

    在各种计算机网络体系结构的网络连接建立和数据传输的流程中,发送端是把通信连接建立指令和用户应用数据从上层向下层传输的,直到最低的物理层;而接收端是把通信连接建立指令和用户应用数据从下层(从最低的物理层开始)向上层传输的,直到与发送端发起通信的对等层。

    4.1 数据传输格式

    在各种网络体系结构中的每一层传输的数据格式,或者说协议数据单元(PDU)是不一样的,具体如下:

    • “物理层”是以最原始的“比特”(bit)流格式传输的,或者说物理层的PDU就是“比特”。

    • “数据链路层”的传输单位是“帧”(frame),一个帧包括多个比特,但一个帧的大小必须是一个整数字节。不同协议的帧大小也不一样。一个帧其实也就是一个DPDU(数据链路协议数据单元)。

    • “网络层”的传输单位是“分组”(或者“包”,packet),一个分组又可以包括多个帧,分组大小也要根据不同协议而定,一个分组其实也就是一个NPDU(网络协议数据单元);

    • 传输层比较特殊,OSI/RM体系结构中是直接以TPDU(传输协议数据单元)为单位的,而在TPC/IP协议体系结构中,TCP是以数据段(segment)为单位进行传输的,UDP是以数据报(datagram)为单位进行传输的。

    • 在会话层、表示层和应用层中是以具体的数据报文为单位进行传输的。

    4.2 协议头和协议尾的封装

    在整个数据传输过程中,数据在发送端时经过各层时都要附加上相应层的协议头和协议尾(仅数据链路层需要封装“协议尾”)部分,也就是要对数据进行协议封装,以标识对应层所用的通信协议。“协议头”是用来封装本层PDU的,“协议尾”则代表本层封装的结束。

    其中的AH为应用层协议头,PH为表示层协议头,SH为会话协议头,TH为传输层协议头,NH为网络层协议头,DH为数据链路层协议头(物理层为最低层,传输的是最小单位的bit(比特),不需要再进行封装,所以没有“物理层头”),DT为数据链路层协议尾。

    参考

    有兴趣的关注IT程序员客栈哦

    如果你觉得写的不错,请移步www.itkezhan.top或者关注公众号IT程序员客栈
  • 相关阅读:
    Console.WriteLine输出字符格式化
    GridView动态生成列问题
    日历控件,可运行在XHTML1.0下
    GridView內容導出Excel時異常:必须置於有 runat=server 的表单标记之中
    圆弧分割
    矩阵变换
    使用group by 来统计的小作业
    group by 后使用 rollup 子句总结
    mysql字符串拼接,存储过程,(来自网上看到)
    【深入理解Linux内核】《第二章 内存寻址》笔记 (2014-06-28 12:38)
  • 原文地址:https://www.cnblogs.com/i-dandan/p/12163662.html
Copyright © 2011-2022 走看看