了解网络协议的概念

计算机网络协议:

负责在网络中建立通信通道和控制通过通信通道的信息流的规则
协议依赖于网络体系结构,由硬件和软件协同实现

计算机网络的协议组成

语法:用于确定协议元素的格式,即数据与控制信息的结构和格式。
语义:用于确定协议元素的类型,即规定了通信双方需要发出何种控制信息,完成何种动作,以及做出何种应答。
定时:用于确定通信速度的匹配和时序,即对事件实现顺序的详细说明。

协议的开发是一个很复杂的过程。这里涉及到:
考虑数据通信时的各种利弊条件
考虑数据在通信线路上传输的形式
不能与现有协议互相冲突
协议不能过于冗余
协议不能不安全
需要加强加密
考虑硬件能否实现
考虑编程过程中有那些漏洞存在,是否适应现今各种协议

了解网络体系结构

指通信系统整体的设计方法
硬件
软件
协议
存取控制
网络拓扑

熟悉ISO/OSI参考模型以及每一层的功能

Open System Interconnection 简称 ISO/OSI RM
国际化标准组织ISO,开放系统互联基本参考模型OSI
7 应用层
提供应用程序运行环境,负责管理和执行应用程序
FTP,NFS,DNS
6 表示层
为数据在传输之前对加密,解密,压缩,解压缩及终端数据格式转换提供一套规则和约定
数据编码,加密,压缩,解密,解压缩
5 会话层
对对话的双方进行资格审查和验证的规则,建立和结束会话,同时规定发送时的双工模式
单工
半双工
全双工
4 传输层
1.传输层可以提供在不同系统之间的进程间数据交互的可靠服务,在网络内两个实体之间建立端到端的通信信道,用来传输信息或报文分组,本层提供两端点可靠,透明的数据传输
2.可以为会话层提供于网络类型无关的可靠信息传输机制,对会话层遮蔽了下层网络操作细节。
确保报文无差错,有序,不丢失,无重复地传输
分割数据,重组数据,按端口号寻址,连接管理,差错控制,流量控制
传输层既是OSI层模型中负责数据通信的最高层,又是面向网络通信的低三层和面向信息处理的高三层之间的中间层。该层弥补了高层所要求的服务和网络层所提供的服务之间的差距,并向高层用户屏蔽通信子网的细节,使高层用户看到的只是在两个传输实体间的一条端到端的,可由用户控制和设定的,可靠的数据通路。
3 网络层
负责建立,保持和终止通过中间设备的连接,同时负责通信子网内路径选择和拥挤控制
负责信息寻址和将逻辑地址和名称转换为物理地址。
路由选择,地址转换,网络中数据竞争控制。
网络层负责将数据包从源节点传送到目的节点,这中间可能会经过许多中间节点,也可能会穿过多个网络。这是网络层和数据链路层不同的地方,数据链路层只负责在相邻两个节点之间传送数据。
2 数据链路层
主要功能有如何将数据组成帧,帧是本层的传输单位,如何处理数据在传输过程中出现的差错,如何调节发送速率使之与接收方匹配,在两个网络实体之间提供数据链路的建立,维持和释放管理
设备:交换机和网桥
交换机基于硬件转发数据帧—数据链路层将信息封装为数据帧
网桥基于软件转发
延迟:帧从一个端口进入到另一个端口出去所花费的时间
1 物理层
物理层包括设备之间物理连接的接口和用户设备与网络终端设备之间的传输规则
物理层有四个重要的特性:
机械特性:规定了物理连接时对插头和插座的几何尺寸,插针或插孔芯数及排列方式
电气特性:规定了信号状态的电压,电流的识别,最大传输速率等
功能特性:规定了接口信号的来源,作用及与其他信号的关系
过程特性:规定了使用交换电路进行数据交换的控制步骤,这些控制步骤应用便利比特流传输得以顺利完成
转换为电流进行传输01010101010信号
应用层:为应用程序提供网络服务(用户接口)
表示层:数据表示
会话层:互联主机通信维持不同应用程序的数据分割
传输层:端到端连接,提供可靠或不可靠数据传输
网络层:确定地址和最佳路径(逻辑寻址)
数据链路层:介质访问(将数据包组合为字节)
物理层:二进制传输

image.png

OSI7层模型的使用

image.png
应用进程数据先传送到应用层,加上应用层首部,成为应用层PDU(协议数据单元)(Protocol Date Unit)(表示对等层之间传递的数据单位)
应用层PDU在传送到运输层,加上运输层首部,成为运输层报文
运输层报文再传送到网络层,加上网络层首部,成为IP数据报(或分组)
IP数据报再传送到数据链路层,加上链路层首部和尾部,成为数据链路层帧
数据链路层帧在传送到物理层,最下面的物理层把比特流传送到物理媒体
电信号(或光信号)在物理媒体中传播从发送端物理层传送到接收端物理层
image.png
物理层接收到比特流,上交给数据链路层
数据链路层剥去帧首部和帧尾部,取出数据部分,上交给网络层
网络层剥去首部,取出数据部分,上交给运输层
运输层剥去首部,取出数据部分,上交给应用层
应用层剥去首部,取出应用程序数据,上交给应用程序
image.png

熟悉TCP/IP模型各层的主要协议及其功能

image.png

应用层,表示层,会话层,对应资源子网
网络层,数据链路层,物理层对应通信子网

image.png

TCP/IP协议是针对Internet开发的一种体系结构和协议标准
TCP/IP协议是国际互联网Internet采用的协议标准
TCP/IP是一组通信协议的代名词,是由一系列协议组成的协议簇

TCP/IP是指传输控制协议/网际协议,是针对Internet开发的一种体系结构和协议标准,其目的在于解决异种计算机的通信问题,使得网络在互连时把技术细节隐藏起来,为用户提供一种通用,一致的通信服务。通常所说的TCP/IP协议实际上包含了大量协议和应用,并且由多个独立定义的协议组合在一起,因此更确切地说,TCP/IP是一个协议簇而不是一种协议。

TCP/IP协议的特点
TCP/IP是开放的协议标准
TCP/IP独立于特定的网络硬件,可以运行在局域网,广域网,等各种网络环境
TCP/IP使用统一的网络地址分配方案,使得整个TCP/IP设备在网络中只有唯一的地址
TCP/IP是标准化的高层协议,可以提供多种可靠的用户服务

image.png

TCP:Transmission Control Protocol 传输控制协议
UDP:User Dategram Protocol 用户数据报协议
IP:Internet Protocol 互联网报文协议
ICMP:Internet Control Message Protocol 互联网控制报文协议
ARP:Address Resolution Protocol 地址解析协议
RARP:Reverse Address Resolution Protocol 反向地址解析协议

image.png

image.png

CRC :循环冗余校验(Cyclic Redundancy Check, CRC)是一种根据网络数据包或电脑文件等数据产生简短固定位数校验码的一种散列函数,主要用来检测或校验数据传输或者保存后可能出现的错误。它是利用除法及余数的原理来作错误侦测的。

TCP/IP支持多种不同的网络接口层协议
以太网
令牌环
FDDI
广域网
SLIP(串行链路网际协议)
PPP(点对点协议,MTU默认为1500字节)
20190214161115.png
20190214162055.png

SNA:IBM公司独立开发的适合于自己公司的网络体系结构, System Network Architecture
DNA:DEC公司独立开发的适合于自己公司的网络体系结构,Date Newwork Architecture
OSI/RM:由ISO国际标准化组织统一规定的互联网参考模型,Open Standard Interconnection Reference Model

Wireshark Network Analyzer抓包工具

https://jingyan.baidu.com/article/fdffd1f80e7d1ef3e98ca1ff.html
https://www.wireshark.org/#download
image.png
Frame 二进制传输报文,物理层
Ethernet 数据链路层
Internet Protocol (IP)IP报文 网络层
Transimission Control Protocol (TCP)报文 传输层
FIle Transfer Protocol (FTP) 应用层

问题,是因为没有权限访问/dev/dpf所导致的问题
image.png
sudo chmod o+r /dev/bpf

Wireshark 网络分析器