------------恢复内容开始------------
------------恢复内容开始------------
一、端口
设备上应用程序的唯一标示
二、端口号
用两个字节表示的整数,它的取值范围是065535。其中01023之间的端口号用于一些知名的网络服务和应用,普通的应用程序需要使用1024以上的端口号。如果端口号被另外一个服务或应用所占用,会导致当前程序启动失败
端口号的范围是从1~65535
分为3大类:
1) 公认端口(Well Known Ports):从0到1023,它们紧密绑定于一些服务。通常这些端口的通讯明确表明了某种服务的协议。例如:80端口实际上总是HTTP通讯。
2) 注册端口(Registered Ports):从1024到49151,它们松散地绑定于一些服务。但是这些端口同样用于许多其它目的。例如:许多系统处理动态端口从1024左右开始。
3) 动态和/或私有端口(Dynamic and/or Private Ports):从49152到65535。
理论上,不应为服务分配这些端口。
实际上,机器通常从1024起分配动态端口。但也有例外:SUN的RPC端口从32768开始。
服务 端口号 说明
FTP(文件传输协议) 20 FTP服务器真正传输所用的端口,用于上传、下载
FTP(文件传输协议) 21 用于FTP的登陆认证
SSH(Secure shell)、SFTP 、 22 加密的远程登录,文件传输
Telnet(远程登录协议) 23 远程登录(在本地主机上使用此端口与远程服务器的22/3389端口连接)
SMTP(简单邮件传输协议) 25 用于发送邮件
DNS 53 域名解析
HTTP 80 用于网页浏览
POP3 (接收邮件)110 SUN公司的RPC服务所有端口
Network News Transfer Protocol 119 NEWS新闻组传输协议,承载USENET通信
SMTP 161 Simple Network Management Protocol,简单网络管理协议
SNMP Trap 160、162 SNMP陷阱
HTTPS 443 加密的网页浏览端口
CIFS 445 公共Internet文件系统
sql server 1433 Microsoft的SQL服务开放的端口 数据库
Oracle 1521 数据库
NFS 2049 通过网络,让不同的机器、不同的操作系统实现文件共享
MySQL 3306 数据库
WIN2003远程登录 3389 Windows 2000(2003) Server,远程桌面协议((Remote Desktop Protocol,简称RDP))远程桌面的服务端口,本地服务器开放此端口,去连接到远程的服务器
QQ· 4000 腾讯QQ客户端开放此端口
redis· 6379 数据库
WebLogic 7001 一个基于JAVAEE架构的中间件,WebLogic是用于开发、集成、部署和管理大型分布式Web应用、网络应用和数据库应用的Java应用服务器
Wingate 8010 Wingate代理开放此端口
TOMCAT 8080 WWW代理开放此端口
宝塔面板 8888
三、协议
计算机网络中,连接和通信的规则被称为网络通信协议
TCP/IP协议族已然成为当今计算机网络协议的主流,
OSI 体系结构(Open Systems Interconnection Reference Model)开发系统互连基本参考模型 物理层-数据链路层-网络层-运输层-会话层-表示层-应用层
TCP/IP 体系结构 网络接口层-网际层IP-运输层(TCP/IP)-应用层
1.TCP协议(面向连接、可靠的)
传输控制协议(Transmission Control Protocol)
TCP协议是面向连接的通信协议,即传输数据之前,在发送端和接收端简历逻辑连接,然后再传输数据,它提供了两台计算机之间可靠无差错的数据传输。在TCP连接中必须要明确客户端与服务端,由客户端向服务端发出连接请求,每次连接的创建都要经过三次握手
三次握手:TCP协议中,在发送数据的准备阶段,客户端与服务器之间的三次交互,以保证连接的可靠
第一次握手,客户端向服务器端发出连接请求,等待服务器确认
第二次握手,服务器端向客户端回送一个相应,通知客户端收到了连接请求
第三次握手,客户端再次想服务器端发送确认信息,确认连接
完成三次握手,连接建立后,客户端和服务器就可以开始进行数据传输了。由于这种面向连接的特性,TCP协议可以保证传输数据的安全,所以应用十分广泛。例如上传文件、下载文件、浏览网页等。

客户端与服务器断开连接时要进行四次挥手
第一次挥手,客户端数据发送完成,则它向服务端发送连接释放请求。该请求只有报文头,头中携带的主要参数为:FIN=1,seq=u。此时,客户端将进入FIN-WAIT-1状态。TCP规定,FIN报文段即使不携带数据,也要消耗一个序号。
第二次挥手,服务器收到客户端连接释放报文,通知相应的高层应用进程,告诉它客户端向服务器这个方向的连接已经释放了。
此时服务端进入了CLOSE-WAIT(关闭等待)状态,并向客户端发出连接释放的应答,其报文头包含:ACK=1,ack=u+1,并且带上自己的序列号seq=v。
- ACK=1:除TCP连接请求报文段以外,TCP通信过程中所有数据报的ACK都为1,表示应答
- seq=v,v是服务端释放应答报文段第一个字节序号
- ack=u+1表示希望收到从第u+1个字节开始的报文段,并且已经成功接收了前u个字节
客户端收到该应答后,进入FIN-WAIT-2状态,等待服务器发送连接释放报文(在这之前还需要接受服务器发送的最后的数据)。
第二次挥手完成后,客户端到服务端方向的连接已经释放,服务端不会再接收客户端的数据,客户端也没有数据要发送了。但服务端到客户端方向的连接仍然存在,服务器若发送数据,客户端依然要接受。这个状态还要持续一段时间,也就是整个CLOSE-WAIT状态持续的时间。
- FIN=1表示该报文段是一个连接释放请求
- seq=u,u-1是客户端向服务端发送的最后一个字节的序号
第三次挥手,服务端将最后的数据发送完毕后,就向客户端发送连接释放报文,其报文头包含:FIN=1,ack=u+1,由于在CLOS-WAIT状态,服务端很可能又发送了一些数据,假定此时的序列号为seq=w,此时,服务器就进入了LAST-ACK(最后确认)状态,等待客户端的确认。
第四次挥手,客户端收到服务器的连接释放报文后,向服务端发出确认应答,报文头:ACK=1,ack=w+1,而自己的序列号是seq=u+1,此时,客户端就进入了TIME-WAIT(时间等待)状态。
该状态会持续2MSL(最长报文段寿命)时间,这个期间TCP连接还未释放,若该时间段内没有服务端的重发请求的话,客户端就进入CLOSED状态,撤销TCB。
服务端只要收到了客户端发出的确认,立即进入CLOSED状态。同样,撤销TCB后,就结束了这次的TCP连接。可以看到,服务器结束TCP连接的时间要比客户端早一些。

2.UDP协议 (无连接、尽最大努力的)
用户数据报协议(User Datagram Protocol)
UDP是无连接通信协议,即在数据传输时,数据的发送端和接收端不建立逻辑连接。简单来说,当一台计算机向另外一台计算机发送数据时,发送端不会确认接收端是否存在,就会发出数据,同样接收端在收到数据时,也不会向发送端反馈是否收到数据
由于使用UDP协议消耗资源小,通信效率高,所以通常都会用于音频、视频和普通数据的传输
3.IP协议
IP指网际互连协议,Internet Protocol的缩写,是TCP/IP体系中的网络层协议。设计IP的目的是提高网络的可扩展性:一是解决互联网问题,实现大规模、异构网络的互联互通;二是分割顶层网络应用和底层网络技术之间的耦合关系,以利于两者的独立发展。根据端到端的设计原则,IP只为主机提供一种无连接、不可靠的、尽力而为的数据包传输服务。
------------恢复内容结束------------
------------恢复内容结束------------
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作! |