计算机网络原理

1.计算机网络基础

计算机网络:

  • 线路(网线,光纤,无线。。。)
  • 计算机终端(服务器,电脑设备,终端机,POS机,ATM机。。。)
  • 网络设备(路由器,交换机,中继器,光电转换器,负载均衡,防火墙,中继器。。。)
  • 软件和协议
  • 网络通信的目的:通信和资源共享

网络的七层模型:物理层,数据链路层,网络层,传输层,会话层,表示层,应用层

 

2.物理层

目的:保证原始数据比特流的无误传输;

任务:确定与物理媒体相关的机械特性,电气特性、机械特性、功能特性以及规程特性

  • 机械特性:连接器形式与插针分配
  • 电气特性:接口电气信号特性
  • 功能特性:数据传递、控制、定时、接地
  • 规程特性:接口电路所使用的规程

物理层-宽带

  • 带宽
    • 带宽的单位:bps(比特率),即bits/sec
    • 带宽单位和文件单位的区别
      • 带宽的大小,指的是每秒能吞吐多少个“位” (0/1)
      • 文件的大小,指的是1字节=8位(8个0/1)
    • 网络距离和宽带的关系
      • 距离与宽带成反比,距离越远,带宽越低
      • 列如:局域网的带宽比广域网大
  • 比如生活中100M宽带,实际下载速度只有10M左右的原因就是:
    • 宽带:每秒钟传输的数字比特
    • 下载速度:每秒钟传输的字节数
    • 1 Byte(字节) = 8bits
    • 10101100 每一个数字为一个bite(比特),文件中的每一个数字/字母存储的时候占用一个字节,一个中文则占用两个字节

物理层:将二进制的数字信息比特流从一个节点传输到下一个节点

  • 设备:线路(网线、光纤,无线,同轴电缆等),网卡,无线(3G,4G,5G,蓝牙,红外,WiFi)

物理层-网卡的作用:

    • 将数字信息进行串/并转换;
    • 地址标识;
    • 数据帧的封装和拆卸;

MAC地址:又叫网卡地址,48bits(8个字节),0~23位是厂商代码,24~47位是产商自行分派

如下图所示:54-EE-75-D6-F1-93,是用16进制替代

 

 

 

  • 计算机内部:CPU, 内存,硬盘,键盘
    • 例如代码程序,已知:定义变量a = 1, b = 2       求: X = a + b的结果
    • 计算机计算原理:第一步,计算机会在内存中,划分一块区域,表示为a,大小为1,表示为b,大小为2;第二步,CPU从内存中取到到数据进行计算,再把计算结果存储到内存中,表示为X,大小为3;
    • 缓存:由于CPU ,内存和硬盘传输效率不同,CPU > 内存 > 硬盘,所以需要缓存进行数据暂存,缓存大小不同,影响电脑性能;
    • 内存和硬盘的区别:断电下,硬盘的数据会保存下来,但是内存/缓存的数据会丢失;
    • CPU:
      • 位数:一位按照8位的倍数,32位,64位表示一个脉冲可以传输64个bits;
      • 主频:2.6GHZ,一秒钟传输2.6G,1k = 1024KB  1M = 1000K   1G = 1024M  1G = 10亿bits 2.6GHZ相当于一秒钟64 * 26亿bits

3.数据链路层

目的:保证数据在物理链路上实现可靠的传输

  • 数据的封装和拆卸
  • 地址标识
  • 数据校验,如:1101101100,在尾部加上数据准确性检查,如果1为偶数就是1,奇数为0,接收端看接收到的数据中1是不是为偶数,是则表示数据接收是对的,存在一点风险

任务:解决信道共享及维护数据帧的完整性

  • 数据帧:10101100为一帧

交换机:交换机里面会有端口号/MAC地址,用户在请求资源时,交换机会根据端口号和MAC地址,寻找是不是局域网资源,如果不是,就通过运营商资源请求外部资源;

 

4.网络层

网络层数据传输单位(包),其作用有:

  • 路由选择;
  • 实现数据跨网络的链接;
  • IP协议
  • 网络层包含:版本号,头部长度,服务器类型,数据包总长度,生存期,源地址,目标地址等

IP协议——地址

  • IPV4地址由32位二进制数字组成,每8位为一段,共分为4段,段间用 “.” 隔开,为了便于阅读,每一段表示为其对应的十进制数字,称为“点分十进制”表示形式;
  • IPV4地址由类型,网络号和主机号三个部分组成,路由寻址时,首先根据地质的网络号到达网络,然后利用主机号达到主机;
  • IPV4地址分为5类,不同的类型适用于不同规模的网络;
  • IP地址在0~255之间,255为广播地址,0表示网段

检查是不是同一个网段的:

  

 

 网络号:IP地址和子网掩码进行逻辑与计算的结果

如上图:IP:10.102.129.158  子网掩码:255.255.255.0

十进制转换成二进制:除二取余数,位数不够时,补0

 

二进制转换成十进制:2的n次方相加,n是1所在的位置(从右往左,0位开始)

  • 10.102.129.158十进制转换成二进制:00001010.01100110.10000001.01110110
  • 255.255.255.0十进制转换成二进制:11111111.11111111.11111111.00000000
  • 逻辑与结果为:00001010.01100110.10000001转换成十进制就是10.102.129
  • 所以网络号:10.102.129  主机号:158

 

检查网络是否通:ping IP -t -l (0~65000)-t是表示持续发送,-l包的的大小字节

如果一个web网页打不开的原因:

  • 通过ping命令定位,是物理层+数据链路层+网络问题,还是上层问题。
  • ping不通的原因:线路松动,或者断开;网卡问题,网卡坏了,网卡驱动问题;网络层问题,IP地址错误,IP不在同一个网络中,并且没有路由 

 

4.传输层

物理层 + 数据链路层 + 网络层:实现数据从原主机的网卡送到目标主机的网卡中;

物理层 + 数据链路层 + 网络层 + 传输层:实现数据从源主机的进程送到目标主机的应用程序进程(端口号)

传输的目的:

  • 实现数据从源进程到目标进程的传输;
  • 断点续传;
  • 拥塞控制

传输层的两个协议:UDP协议,TCP协议,两个协议区别如下:

  • UDP无连接协议,TCP是面向连接的协议;
  • TCP比UDP更可靠;
  • UDP比TCP要占用的网开销小很多

端口号的概念:

  • 对于TCP或UDP的应用程序,都有标识该应用程序的端口号,即端口号用于区分各种应用;
  • 端口号的长度是16位,可提供65536(2的16次方)个不同的端口号;
  • 端口号1-255是公共端口号,256-1024是用于Unix服务;
  • 端口号的另一种分配方法叫本地分配,使用1024以上的端口号,本地分配方式不受网络规模限制,但是通信双方要预先知道。

网络链接的三次握手四次断开,如:A和B进行通信,三次握手四次释放过程如下:

  • 三次握手:
    • 1.A发请求给B(希望对方可以一起吃饭,SYN, seq=0)
    • 2.B回复A(可以一起吃饭,,SYN, seq=0,ACK  ACK number=1)
    • 3.A确认收到B的确认消息(ACK  ACK number=1)
  • 四次断开:
    • 1.A告诉B,数据发送完了(序号n,FIN=1)
    • 2.B告诉A,收到最后一个消息了(ACK number=n+1,ACK flag=1)
    • ........
    • 3.B的数据发送完了后,B告诉A,数据发送完了(序号m, FIN=1)
    • 4.A告诉B,收到了最后一个消息(ACK number=m+1, ACK flag=1)

 

5.应用层

应用层,确定数据格式,数据加密,数据压缩等;

应用层常用的协议:

HTTP协议:HyperText Transfer Protocol  超文本传输协议,是应用层协议,请求和响应应有固定的格式,

  • 请求由四部分组成:请求行,请求头,空行,请求体;
  • 响应也是有四部分组成:响应行,响应头,空行,请求体;

接口请求的方式有:GET(获取资源), POST(传送数据),delete,trace,put,option,head

响应码:100-599

  • 2XX:服务器正常响应
  • 4XX:客户端错误
  • 5XX:服务器错误

DNS:Domain Name System 域名,配置很多域名和IP对应的关系。

 

posted @ 2021-03-11 10:47  菜鸟楚  阅读(873)  评论(0编辑  收藏  举报