网络编程基础知识
端口:
端口英文port,可以认为是设备与外界通讯交流的出口。
端口可分为虚拟端口和物理端口。
虚拟端口是计算机内部或交换机路由器的端口,不可见(例如:8080,3306,21等等)。
物理端口又称为接口,是可见端口,计算机背板的网口,电话插口等等。
协议端口:
如果把IP地址作为一间房子,端口就是出入这间房子的门,真正的房子只有几个门,但是一个IP地址的端口可以有65536之多,端口是通过端口号来标记的,端口号只有整数,方位从0-65536之间。
端口号可分为3大类:
1.公共端口:从0-1023,他们紧密绑定于某一些服务,通常这些端口的通讯明确表明某种服务协议,例如80端口的HTTP协议。
2. 注册端口:从1024到49151,他们松散地绑定于某一些服务。也就是说有许多服务绑定于这些端口。
3. 动态或者私有端口:从49152-65535。理论上,不应为服务分配这些端口。实际上,机器通常从1024起分配动态端口,但也有例外:SUN的RPC端口从32768开始。
协议:
网络协议简称:
网络协议是通信计算机双方必须共同遵循的一组约定。
如:怎么建立连接,怎么相互遵循约定,计算机之间才能交流。
它的三要素是:语法、语义、时序。
网络协议,也可简称协议,通常由三要素组成:
1. 语法:即数据与控制信息的结构和格式;
2. 语义:即需要发出何种控制信息,完成何种动作以及做出何种响应;
3. 时序:即事件实现顺序的详细说明;
http:超文本传输协议资源
https:用安全套接字层传送超文本传输协议
ftp:文件传输协议
mailto:电子邮件协议