网络基础
你已经学过C/C++的网络编程了!
软件结构
C/S结构
- C => Client,表示客户端
- S => Server,表示服务器端
B/S结构
- B => Browser,表示浏览器
- S => Server,表示服务器端
它们都离不开网络通信
网络通信协议
TCP&UDP
互联网上运行的计算机使用传输控制协议(TCP)或用户数据报协议(UDP)相互通信
TCP
- TCP(传输控制协议)是基于连接的协议,可在两台计算机之间提供可靠的数据流。
- TCP为需要可靠通信的应用程序提供了点对点通道。
UDP
- UDP(用户数据报协议)是一种协议,它从一台计算机向另一台计算机发送独立的数据包(称为数据报),而不能保证其到达。 UDP不像TCP那样基于连接。
- UDP协议提供了网络上两个应用程序之间无法保证的通信。 UDP不像TCP那样基于连接。 而是将独立的数据包(称为数据报)从一个应用程序发送到另一个应用程序。 发送数据报就像通过邮局发送一封信一样:传递顺序并不重要,也不能保证,每条消息彼此独立。
- 许多防火墙和路由器已配置为不允许UDP数据包。
IP与端口
-
一般来说,计算机与网络具有单个物理连接。 发送到特定计算机的所有数据都通过该连接到达。 但是,数据可能打算供计算机上运行的不同应用程序使用。 那么计算机如何知道将数据转发到哪个应用程序?通过使用端口。
-
通过Internet传输的数据带有寻址信息,该信息标识了计算机及其发往的端口。 该计算机由其32位IP地址标识,该IP地址用于将数据传递到网络上正确的计算机。 端口由一个16位数字标识,TCP和UDP使用该16位数字将数据传递到正确的应用程序。
-
端口号的范围是0到65,535,因为端口由16位数字表示。 端口号范围从0 - 1023被限制; 它们保留供HTTP和FTP等知名服务以及其他系统服务使用。 这些端口称为众所周知的端口。 你的应用程序不应尝试绑定到它们。
URL
访问资源的地址, 比如告诉计算机文件在C盘都xxx文件夹中
-
URL是“统一资源定位符”的缩写。
-
URL具有两个主要组成部分:访问资源所需的协议和资源的位置。