您的位置:首页 > 理论基础 > 计算机网络

180118—【寒假培训笔记】Day 1/6 网络相关

2018-01-18 22:35 267 查看

网络中最重要的两个东西:

协议:

用来引导数据如何去往目的地。网络设备之间交谈的基础。

数据:

网络需要运输的真正的“货物”。

常见的网络硬件设备:

集线器 hub:

纯物理层的设备,没有电路板,不需要电源,已经淘汰。其原理可以从字面理解,和插线板同理。

这就意味着,一台设备发任何消息,所有连到该集线器上的设备都会收到。

一个集线器是一个冲突域(这个发那个也发两个数据就都破了。)

交换机 Switch :

一个数据链路层的设备,会通过查看数据中的MAC地址来判断出接口。一个交换机是一个广播域

在接受到数据的时候,它会把数据还原一部分出来看看发往的地方是哪里,以此解决冲突,和一对一的问题。

但其提供的接口终归是有限的,而且因为 “ 一个交换机是一个广播域” 所以如果只用交换机的话,有时候我们并不想接到广播。

路由器 router:

解决了交换机广播域的问题

网络层设备,通过查看数据中IP地址,来判断出接口

家用的和企业级差别大了去了。

大型的路由器,它的接口不多,但可以加各种模块,可以自己DIY功能。(其实是厂商为了你省钱)

它是网络层设备,通过查看数据中IP地址,来判断出接口。



OSI七层模型:

这是一个网络的目录一般的存在。

Open System Interconnection,意为开放式系统互联。

其出现是国际标准化组织(ISO,为统一市场标准而制定的。该模型定义了不同计算机互联的标准,是设计和描述计算机网络通信的基本框架。

OSI模型把网络通信的工作分为7层,分别是物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。

应用层
提供软件,操作系统,用户API(应用程序编程接口)
表示层
提供数据的加解密,解压缩,格式转换
会话层
建立和维护会话、会话ID
================以上称为  高层    =========================
传输层
提供了数据的分段和重组、不同服务区分端口号、传输的方式TCP/UDP
网路层
提供逻辑地址IP(一个大致的地址)、帮助数据到达所在的局域网
数据链路层
提供物理地址MAC(这个大致范围里具体是哪个)、帮助数据到达所在的接口
物理层
提供传输介质的电气标准。双绞线RJ45、RJ11、RJ48。光纤SC、LC




数据的封装:

涉及到数据传递的详细过程。

设现在有设备A、B,两者由路由器连接。设备A经过前三层之后已经产生数据data。



在A设备发出数据之前,还要加这样一些事情:



数据在传输层时,会被套上一个 TCP头部 以帮助其重组,

往下来到网络层,会被套上一个 IP头部,包括S-IP、D-IP,源IP和目的IP。

继续来到数据链路层,加上MAC头部 具体地址,也包括 S-MAC、D-MAC。

这些都完了之后还不够,由于物理传输是不可靠的,所以信息还要在尾部加上一个 FCS尾,用于检验传递过之后的信息是否完好无损。

在这个环境中,AB由路由器连接,所以从A到B之间,路由器会帮助做寻址工作,它会把数据解压来看,如果地址不是B的,它会帮你寻址(只有交换机和路由器会干这个事。)

来到设备B之后,在数据链路层会由FCS尾部来检查数据是否完好,如果不,这个数据包将会被丢弃。

之后就是到过来看:

你的D-MAC是我吗?你的D-IP是我吗?如果不是,依旧丢弃。

TCP/IP协议:

先说DoD模型,这有利于理解TCP/IP协议组,这个模型更注重于网络层和传输层发生的事情:



细分的协议有如下:

应用层
Telnet
远程终端控制
FTP
文件传输协议
TFTP
文件传输协议
SNMP
简单网络管理协议
HTTP
超文本传输协议
SMTP
电子邮箱协议
NFS
网路文件系统
DHCP
动态主机地址分配协议
主机到主机层
TCP
传输控制协议
UDP
用户报文协议
因特网层
ICMP
ping和tracert主要就是ICMP因特网控制报文协议
IGMP
用于组播
Routing Protocol
各种协议,帮助路由器学习网络
IP
因特网协议
网络接入层
ARP
地址解析协议


TCP &UDP 协议

两者相比,TCP是一种高可靠性的传输,它有一套强大的机制来保证其传输的可靠性。

首先,在会话建立的时候它会确认两者是否已经连接,在发送数据时,它会确定对方是否收到了且是完整地收到了自己发送的数据。

而UDP才不会管你们有没有连接上,直接发,是一种“尽力而为”的传输。

下面重点整理TCP的几种用来确保可靠性的几种机制。

TCP的序列号和确认号:

序列号:seq; 确认号:ack。

TCP的序列号和确认号在开始的时候都是随机数,而且这个随机数一般是比较大的。

用于确认消息是否被完全无损的接收。

- 序列号:开始时随机产生,之后会将每次收到的ACK值作为下次发送时的序列号。

- 确认号:之后会将上次收到的序列号加上上次收到的数据的字节数作为新的(回复过去的)确认号

这是在描述好多好多次通讯之间发生的事。



三次握手应答:请求建立连接

这个机制的存在是当两台设备产生通信时要确定对方存在。

当A、B意图建立连接时:

A请求和B建立连接

B给予确认的同时,向A发起请求。(一次发信包括两个信息)

A确认B的请求。

完成三次握手应答。



四次挥手:请求断开连接

当A、B确定要终止会话时,需要分别断开两个方向的连接,每个连接的断开需要FIN和ACK两个数据段的确认(FIN就是 finish请求哈)



当A的话说完的时候,将向B发送终止指令,B接受之后,这时的同意指令和请求断开连接指令不再是同时发送,因为A讲完话的时候B不一定也讲完了。所以分两条发送。

TCP&UDP的端口号:

端口,即提供某一项服务、程序收发数据的窗口,反正接出去的网线只有一条,分了端口,才能让多个任务同时产生数据交换,而且不会错乱。

可用的端口有0~65535,但0不可用,所以实际上有65535个可用。

1023之后的端口号称为随机端口号。

固定端口号常见用途见C:\Windows\System32\drivers\etc\services

固定端口号的作用是定死的,当你需要某项服务的时候,需要固定访问某个端口。

TCP滑动窗口机制:

用来流量控制,发送的 窗口 大小决定了数据的吞吐量。

在初始时候,窗口大小为2的0次方,如果没有丢包,就会变成2的1、2的2、2的3······2的n次方。当丢包的时候窗口会调整为2^(n-1),瞬间小一倍,然后再以线性增长。到了某个时候会趋于平稳。

因特网层:

负责将IP报文从源端发送到目的端

定义逻辑地址(IP地址)

负责数据包的寻径和转发

MTU最大传输单元

重点关注:TTL time to life

工具介绍:ping

windows上按“田”键+R、在运行框中输入cmd、输入tracert(空格)x.x.x.x、ping x.x.x.x、

tracert可以用来查看从你的机器访问到另外一个地址中间跳了几跳,

ping可以用来检查数据的联通性。

TTL的值每经过一台设备都会减一,当它减到0,这个数据包就会被丢弃。

它可以有效防止环路的产生,也可以用来测试你离目标差了多远。

因为 TCP规定,当一个数据包被丢弃的时候,会通知发出方。所以通过第一次设1,第二次设2。这种方式我们可以一步一步看出数据的经过。(这个就是tracert的原理)

ARP:地址解析协议

在访问某个IP地址不知道对方的MAC地址的时候,用广播向整个局域网发起查询,问大家“who has xxx.xxx.x.x,tell xxx.xxx.xx.x”最后得到结果并且缓存在ARP表中。

在访问某个IP完成封装的时候,会首先查询ARP表,如果没有对应条目,就会发起查询。也就是说问过一次之后就不问了。

在windows的cmd中输入arp(空格)-a可以查看ARP表中IP地址和其对应的MAC地址缓存。

此协议每天都在用,但极不安全。

中间人攻击: 具体见百度吧。。

另:因为广播是不能穿过路由器的,所以,当ARP发起查询的对象不在当前局域网中的时候,路由器会有一个代理ARP功能,会代替目的地回复请求,并且将目的MAC改成自己。

IP编址

在IP网络中,每一个通讯节点都需要一个唯一的IP地址。

IP地址的构成:

由 网络位·主机位 组成。

若IP地址的网络位相同,那么这些IP地址处于同一个局域网,广播域。

IP地址是由32位二进制数组成,使用点分十进制来书写格式。

判断网络位和主机位的方法:

有类

A:1.0.0.0~126.255.255.255 /8位网络位

B:128.0.0.0~191.255.255.255 /16 127也被保留

C:192.0.0.0~223.255.255.255 /24

D:224.0.0.0~239.255.255.255 none 用作组播地址

E:实验

无类

可通过子网掩码来判断网络位

子网掩码和IP地址一样有32位,所以可以做到一一对应。

当子网掩码某位为1的时候,表示IP地址对应的那一位是网络位。

当子网掩码标识的网络位位数,大于该IP地址在有类划分中网络位位数,则称这种情况为可变长子网掩码(VLSM)

当主机位全为0的时候,该地址为这个局域网的网络编号,不能被主机分配使用。

当主机位全为1的时候,该地址为这个局域网的广播地址,不能被主机分配使用。

子网掩码的出现是什么呢?

一个集体,用个C类不够,用个B类浪费,所以再多加几位网络位。然后搞个掩码。

做个题:

A 172.16.1.8/30     前30位为网络位,后两位是主机位,8转二进制,最后两位是00,不可用。
B 172.16.1.9/30                                  9转二进制,01,可
C 172.16.1.10/30                                           10,可
D 172.16.1.11/30                                           11,不可
子网掩码255.255.255.252
请问以上哪个地址可以被分配给电脑使用?(多选)BC


私有IP地址

A:10.0.0.0~10.255.255.255/8

B:172.16.0.0~172.31.255.255/12

C:192.168.0.0~192.168.255.255/16

P.S.

MAC,译为 媒体访问控制 或 物理地址 ,是网卡出厂的时候,厂商烧到网卡的,原则上不可更改。

单播:一对一,别人听不到 任何设备都会转发

广播:一对所有,不管对你有没有用,你都能听到 交换机会转发,路由器不会。

组播:一对多个感兴趣的组,你想听就听,不想听就算。是 支持组播的设备,并且有兴趣的成员才会转发。

localhost:本机

位图png jpg gif、矢量图eps、avi

图片分:

- 位 图:png,jpg,GIF

(png多了一个啥通道,可以支持透明图片的保存)

- 矢量图:eps、avi

它记住的是点,线是自己画出来的,曲线他会算方程然后来画。(基于此, 一般它不好做成特别复杂的图片,存个自拍拿人脸为难人家干啥。。)

RJ45 & RJ48的区别在于:

48比45凸出了一小点,其他标准一样。48的口插45照常用。45的口插不了48。

网卡有个区分是:全双工和半双工。

全双工和半双工:

- 半双工是说我同时要么只能收,要么只能发,但如果切换的够快了你也觉得是同时收发。

- 全双工代表我可以同时收发。

TCP本身是一种全双工的机制。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  网络 数据