Linux_网络基础1

局域网:是指在某一区域内由多台计算机互联成的计算机组。一般是方圆几千米内。局域网可以实现文件管理,应用软件共享,打印机共享等功能。局域网是封闭型的,可以由办公室内的两台计算机组成,也可以由一个公司的上千台机器组成。
主要特点:

  1. 覆盖的地理范围小,只在一个相对独立的局部范围内联,如一座或集中的建筑群内。
  2. 使用专门辅设的传输介质进行联网,数据传输速率高
  3. 通信延迟时间短,可靠性较高
  4. 局域网可以支持多种传输介质

    广域网:也叫远程网,它的作用物理范围大,一般可以从几十公里至几万公里。一个国家或国际间建立的网络都是广域网。广域网的通信子网可以利用公用分组交换网,卫星通信网和无线分组交换网,它将分布在不同地区的局域网或计算机系统互联起来,达到资源共享的目的。

在局域网内所有交互的主机都是可以被监听的。在局域网内两台主机时可以直接通信的。

网卡:即网络接口板,又称网络适配器或NIC,是一块被设计用来允许计算机在计算机网络上进行通讯的计算机硬件,由处理器,存储器等部件组成。即计算机专门来和网络打交道的。网卡能实现与局域网传输介质之间的物理连接和电信号匹配,还涉及帧的发送与接受,介质访问控制,数据的编码与解码以及数据缓存的功能等。可被设置为混杂模式,可抓包在局域网内的所有数据。

报文:是网络中交换与传输的数据单元,即站点一次性要发送的完整的数据信息,其长短很不一致,长度不限且可变。

数据包:在包交换网络里,单个消息被划分为多个数据块,这些数据块被称为包。包是TCP/IP协议通信传输中的数据单位,一般也称数据包。TCP/IP协议是工作在OSI模型第三层(网络层)或第四层(传输层)上的。帧工作在第二层(数据链路层)。上一层的内容由下一层的内容来传输,所以在局域网中,“包”是在“帧”里的。

交换机:把局域网分成多个碰撞域。

协议

协议是一种约定。计算机之间的传输媒介是光信号和电信号,通过“频率”和“强弱”来表示0和1这样的信息,要想传递各种不同的信息,就需要约定好双方的数据格式。

协议分层

网络中结构是以层状分层的,层层之间只有数据和接口之间的交互,互不影响。分层几乎都是软件上的分层。

OSI七层模型

  • OSI:(开放系统互连)七层网络模型称为开放式系统互联参考模型,是一个逻辑上的定义和规范。
    把网络从逻辑上分了7层,每一层都有相关对应的物理设备,比如路由器,交换机。
  • OSI七层模型是一种框架性的设计方法,其最重要的功能就是帮助不同类型的主机实现数据传输。
  • 它的最大优点是将服务,接口和协议这三个概念明确的区分开来,概念清楚,理论也比较完整,通过七个层次化的结构模型使不同的网络之间实现可靠的通讯。
    Linux_网络基础1

TCP/IP五层(四层)模型
TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。
TCP/IP通讯协议采用了5层的层级结构,每一层都呼叫它的下一层所提供的网络来完成自己的需求。

  • 物理层:负责光/电信号的传递方式,比如现在以太网通用的网线,早期以太网采用的同轴电缆,光纤,现在的wifi无线网使用电磁波都属于物理层的概念。物理层的能力决定了最大传输速率,数传距离,抗干扰性等,集线器工作在物理层。
  • 数据链路层:负责设备之间的数据帧的传送和识别,例如网卡设备的驱动,帧同步(就是说从网线上检测到什么信号算作新帧的开始),冲突检测,数据差错校验等工作,有以太网,令牌环网,无限LAN等标准。交换机工作在数据链路层。
  • 网络层:负责地址管理和路由选择。例如在IP协议中,通过IP地址来标识一台主机,并通过路由表的方式划出两台主机之间数据传输的线路。路由器工作在网络层。
  • 传输层:负责两台主机之间的数据传输,如传输控制协议(TCP),能够确保数据可靠的从源主机发送到目标主机。
  • 应用层:负责应用程序间沟通,如简单电子邮件传输,文件传输协议,网络远程访问协议等。我们的网络变成主要就是针对应用层。

    物理层我们考虑的比较少,因此很多时候也称为TCP/IP四层模型。
    对于一台主机,他的操作系统内核实现了从传输层到物理层的。层层之间不会跨层交流,使用接口通信。
    两台计算机通过TCP/IP协议通讯的过程如下:
    Linux_网络基础1
    自顶向下:封装,要添加各自报文的报头信息。
    自底向上:解包,交付。
    除应用层外:每一层的报头信息中包含了要交付的信息。
    跨网段的主机的文件传输。数据从一台计算机到另一台计算机的传输过程要经过一个或多个路由器。
    Linux_网络基础1
    h1->封装->进入路由->解包->h2
    数据包封装与分用

  • 不同的协议层对数据包有不同的称谓,在传输层叫做段,在网络层叫做数据段,在链路层叫做帧。
  • 应用层数据通过协议栈发送到网络上时,每层协议上都要加上一个数据首部,叫做封装。
  • 首部信息中包含了一些类似于首部有多长,载荷有多长,上层协议是什么等信息。
  • 数据封装成帧之后发送到传输介质上,到达目的主机每层协议再剥掉相应的首部,根据首部中的“上层协议字段”将数据交给对应的上层处理。