内容:
简单介绍网络发展的历史背景,以及局域网/城域网/广域网/互联网/因特网/以太网
IP地址。端口,协议以及网络通信数据传输流程
网络发展:
独立模式:计算机之间相互独立
网络互联:多台计算机连接在一起,完成数据共享
局域网(LAN):计算机数量更多了,通过交换机和路由器连接在一起
可以实现文件管理、应用软件共享、打印机共享、工作组内的日程安排、电子邮件和传真通信服务等功能
广域网(WAN):将远隔千里的计算机都连接在一起
LAN可与WAN互联,或通过WAN与位于其它地点的WAN互联,这时LAN就成为WAN上的一个端系统
城域网(MAN):一般指覆盖范围为一个城市的网络,覆盖的地理范围大约是几十公里。
以太网(ethernet):是当今现有局域网采用的最通用的通信协议标准。以太网络使用CSMA/CD(载波监听多路访问及冲突检测)技术,并以10M/S的速率(仅指标准以太网的速率而已)运行在多种类型的电缆上。以太网与IEEE802.3系列标准相类似。
以太网可以说是局域网的一种,但是目前局域网大多数都是使用以太网标准,故可认为以太网就是局域网。然后,局域网之间的通信协议必须是相同的,即局域网内计算机(或计算机网络)只允许使用同一种通信规则进行通信。而不同的局域网之间,又可以通过其他任意的通信规则进行通信(内部只是用一种通信规则),这就构成了互联网。
互联网(internet):凡是由能彼此通信的设备组成的网络就叫互联网,即使仅有两台机器(计算机、手机等),不论用何种技术使其彼此通信,都叫互联网。所以,互联网有广域网、城域网及局域网之分。而因特网是互联网中的一种,它可不是仅有两台机器组成的网络,而是由上千万台设备组成的网络(该网络具备一定规模)。因特网使用TCP/IP协议让不同的设备可以彼此通信。但使用TCP/IP协议的网络并不一定是因特网,一个局域网也可以使用TCP/IP协议。判断自己是否接入的是因特网,首先是看自己电脑是否安装了TCP/IP协议,其次看是否拥有一个公网地址(所谓公网地址,就是所有私网地址以外的地址)。
因特网(Internet):是基于TCP/IP协议实现的,TCP/IP协议由很多协议组成,不同类型的协议又被放在不同的层,其中,位于应用层的协议就有很多,比如FTP、SMTP、HTTP。所以,因特网提供的服务一般包括有:www(万维网)服务、电子邮件服务(outlook)、远程登录(QQ)服务、文件传输(FTP)服务、网络电话等等。
网络协议:
协议:通信中相同的格式约定
网络通信协议:网络通信中的数据格式约定
网络通信标准协议—统一的协议标准
ip地址唯一定位网络中的主机,定位起点-终点
port端口识别一台主机上的进程
mac地址,定位相邻设备,起点-》重点之间有很多节点
协议分层:
OSI七层参考模型 TCP/IP五层参考模型
TCP/IP五层模型:TCP/IP是一组协议的代名词
应用层-》传输层-》网络层-》链路层-》物理层
应用层:负责应用程序之间的沟通----HTTP/FTP
传输层:负责端与端(进程与进程)之间的数据传输 —TCP/UDP
网络层:负责地址管理与路由选择—IP---- 典型设备 路由器
链路层:负责相邻设备设备间的数据传输—Ethernet典型设 备交换机
物理层:负责光/电信号的传输—以太网协议—集线器
物理层: 负责光/电信号的传递⽅式. ⽐如现在以太⺴通⽤的⺴线(双绞 线)、早期以太⺴采⽤的的同
轴电缆(现在主要⽤于有线电视)、光纤, 现在的wifi⽆线⺴使⽤电磁波等都属于物理层的概念。物理
层的能⼒决定了最⼤传输速率、传输距离、抗干扰性等. 集线器(Hub)⼯作在物理层.
数据链路层: 负责设备之间的数据帧的传送和识别. 例如⺴卡设备的驱动、帧同步(就是说从⺴线上
检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就⾃动重发)、数据差错校验等⼯作.
有以太⺴、令牌环⺴, ⽆线LAN等标准. 交换机(Switch)⼯作在数据链路层.
网络层: 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识⼀台主机, 并通过路由表的
⽅式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)⼯作在⺴路层.
传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送
到目标主机.
应⽤层: 负责应⽤程序间沟通,如简单电⼦邮件传输(SMTP)、⽂件传输协议(FTP)、⺴络远
程访问协议(Telnet)等. 我们的⺴络编程主要就是针对应⽤层.
对于⼀台主机, 它的操作系统内核实现了从传输层到物理层的内容;
对于⼀台路由器, 它实现了从⺴络层到物理层;
对于⼀台交换机, 它实现了从数据链路层到物理层;
对于集线器, 它只实现了物理层;
但是并不绝对. 很多交换机也实现了⺴络层的转发; 很多路由器也实现了部分传输层的内容(⽐如端⼝转发);
网络传输基本流程:
数据包的封装和分用
不同的协议层对数据包有不同的称谓,在传输层叫做段(segment),在⺴络层叫做数据报 (datagram),
在链路层叫做帧(frame).
应⽤层数据通过协议栈发到⺴络上时,每层协议都要加上⼀个数据⾸部(header),称为封装
(Encapsulation).
⾸部信息中包含了⼀些类似于⾸部有多⻓, 载荷(payload)有多⻓, 上层协议是什么等信息.
数据封装成帧后发到传输介质上,到达⺫的主机后每层协议再剥掉相应的⾸部, 根据⾸部中的 "上层
协议字段“将数据交给对应的上层协议处理
封装过程
数据分用: