网络编程基本概念
计算机网络
计算机网络分类1(按照规模)
局域网LAN
城域网MAN
广域网WAN
计算机网络分类2(传输介质)
同轴电缆网络
双绞线网络
光纤网络
卫星网络
计算机网络分类3(拓扑结构)
星形网络
总线网络
环状网络
网络分层
由于结点之间联系很复杂,在制定协议时,把复杂成份分解成一些简单的成份。再将它们复合起来。常用的复合方式是层次方式,即同层间可以通信、上一层可以调用下一层,而与在下一层不发生关系。
主机A 主机B
应用层 应用层协议 应用层
表示层 表示层协议 表示层
会话层 回话层协议 会话层
传输层 传输层协议 传输层
网络层 网络层协议 网络层
数据链路层 数据链路层协议 数据链路层
物理层 物理层协议 物理层
OSI参考模式:开放系统互连参考模型
TCP/IP是一个协议族,也是按照层次划分,共四层:应用层、传输层、互连网络层,网络接口层(物理+数据链路层)。
OSI网络通信协议模型,是一个参考模型,而一个参考模型,而TCP/IP协议是事实上的标准。
TCP/IP协议集
应用层 Telnet,FTP,SMTP,DNS,HTTP以及其他应用协议
传输层 TCP/UDP
网络层 IP,ARP,RARP,ICMP
网络接口 各种通信网络接口(以太网等)
TCP/IP参考模型:传输控制/国际协议
网络通信协议
数据封装与拆封
1、封装(发送数据)
2、拆封(接收数据)
TCP协议和UDP协议
TCP(transform control protocol)
一种面向连接(连接导向)的、可靠的、基于字节流的传输层(Transport layer)通信协议
特点
面向连接
点到点的通信
高可靠性:三次握手
占用系统资源多、效率低
生活案例
打电话
应用案例
HTTP FTP TELNET SMTP
UDP(User DatagramProtocol)
一种无连接的传输层协议,提供面向事物的简单不可靠信息传送服务
特点
非面向连接,传输不可靠,可能丢失
发送不管对方是否准备好,接收方收到也不确认
可以广播发送
非常简单的协议,开销小
生活案例
发送短信、发电报
应用案例
DNS SNMP
IP地址和端口
IP地址
用来标志网络中的一个通信实体的地址。通信实体可以是计算机,路由器等
IP地址分类
IPV4:32位地址,以点分十进制表示,如:192.168.0.1
IPV6:128位(16个字节)写成8个16位的无符号整数,每个整数用四个十六进制位表示,数之间用冒号(:)分开,如3ffe:32011:1401:1280:c8ff:fe4d:db39:1984
特殊的IP地址
127.0.0.1本机地址
192.168.0.0--192.168.255.255私有地址,属于非注册地址,专门为组织机构内部使用。
端口:port
IP是用来标志一台计算机,但是一台计算机上可能提供很多种应用程序,使用端口来区分这些应用程序。
端口是虚拟的概念,并不是说在主机上真有若干个端口。通过端口,可以在一个主机上运行多个网络应用程序。
端口范围0--65535,16位整数
IP和端口的关系
必须同时制定IP地址和端口号才能正确的发送数据
端口分类
公认端口0-1023 比如80端口分配给www,21端口分配给FTP
注册端口1024-49151 分配给用户进程或应用程序
动态/私有端口49152-65535
浙公网安备 33010602011771号