一。网络基础
1.网络互联:多台计算机连接起来,完成数据共享。
2.网络按覆盖区域可分为:
(1)局域网(LAN):计算机数量更多了, 通过交换机和路由器连接在⼀起。
(2)广域网(WAN):将远隔千⾥的计算机都连在⼀起。
3.网络协议
(1)在世界上,有很多网络,但是他们之间的信息传递,如果不统一,就会产生混乱,所以在这时,网络协议就产生了,它来决定信息传递的格式,并且作为一个约束。
4.OSI系统模型。
OSI系统模型把网络共分为七层,分别是:
(1)物理层:决定连接器与网线的规格。
(2)数据链路层:互联设备之间传送和识别数据帧。
(3)网络层:地址管理和路由选择。
(4)传输层:管理两个节点之间的数据传输。
(5)会话层:通信管理,负责建立和断开通信连接。
(6)表示层:设备的固有数据格式和网络标准格式的转化。
(7)应用层:针对特定应用的协议。
这个分层的最大优点就是它将服务、协议和接口三者明确的分开来,并且降低了系统的复杂度,提高了使用效率。
5.TCP/IP五层模型
随着社会的发展,人们又更新了分层,将网络划分为五层模型。
(1)物理层: 负责光/电信号的传递⽅式. ⽐如现在以太网通⽤的网线(双绞 线)、早期以太网采⽤的的同 轴电缆(现在主要⽤于有线电视)、光纤, 现在的wifi⽆线网使⽤电磁波等都属于物理层的概念。物理层的能⼒决定了最⼤传输速率、传输距离、抗干扰性等. 集线器(Hub)⼯作在物理层.。
(2)数据链路层: 负责设备之间的数据帧的传送和识别. 例如网卡设备的驱动、帧同步(就是说从网线上 检测到什么信号算作新帧的开始)、冲突检测(如果检测到冲突就⾃动重发)、数据差错校验等⼯作. 有以太网、令牌环网, ⽆线LAN等标准. 交换机(Switch)⼯作在数据链路层。.
(3)网络层: 负责地址管理和路由选择. 例如在IP协议中, 通过IP地址来标识⼀台主机, 并通过路由表的⽅式规划出两台主机之间的数据传输的线路(路由). 路由器(Router)⼯作在网路层.。
(4)传输层: 负责两台主机之间的数据传输. 如传输控制协议 (TCP), 能够确保数据可靠的从源主机发送 到目标主机。.
(5)应⽤层: 负责应⽤程序间沟通,如简单电⼦邮件传输(SMTP)、⽂件传输协议(FTP)、网络远程访问协议(Telnet)等. 我们的网络编程主要就是针对应⽤层.。
(6)注:
对于⼀台主机, 它的操作系统内核实现了从传输层到物理层的内容;
对于⼀台路由器, 它实现了从⺴络层到物理层;
对于⼀台交换机, 它实现了从数据链路层到物理层;
对于集线器, 它只实现了物理层。
二。网络编程套接字
1.IP地址
(1)唯一标记主机号的地址。
(2)端口号:用来标记一个进程。而且是传输层的协议的内容。同时一个端口号只能被一个进程占用。
2.TCP协议
(1)特点:面向连接的可靠的面向字节流传输的传输层协议。
3.UDP协议
(1)特