网络编程中名词整理

IP

IP(Internet Protocol):IP 是互联网协议的简称,它是一种用于在网络中传输数据的协议。IP 地址是唯一标识一个网络节点的地址。

Port

Port(端口):端口是用于标识应用程序或服务的逻辑地址。在网络通信中,每个应用程序通过使用不同的端口来与网络进行通信,从而实现数据的传输和交换。

TCP

TCP(Transmission Control Protocol):TCP 是传输控制协议,它是一种面向连接的、可靠的、基于字节流的传输协议。TCP 提供了数据分段、重传、流量控制等机制,确保数据可靠地传输。

UDP

UDP(User Datagram Protocol):UDP 是用户数据报协议,它是一种无连接的、不可靠的、基于数据报的传输协议。UDP 以数据报形式发送数据,不保证数据可靠性和顺序性,但传输效率高。

KCP

KCP(KaiXin Control Protocol)是一种可靠传输协议,它是对UDP协议的改进和优化。KCP旨在解决UDP协议在不可靠网络中传输数据的问题,如高丢包率、网络延迟和乱序等。

HTTP

HTTP(Hypertext Transfer Protocol):HTTP 是超文本传输协议,用于在客户端和服务器之间传输超文本数据。它是建立在 TCP 或者其他传输协议之上的应用层协议,常用于 Web 浏览器和服务器之间的通信。

HTTPS

HTTPS(Hypertext Transfer Protocol Secure):HTTPS 是安全的超文本传输协议,在 HTTP 的基础上加入了 SSL/TLS 加密机制,用于保护通信过程中的数据安全。

DNS

DNS(Domain Name System):DNS 是域名系统,它用于将域名与 IP 地址之间进行转换。DNS 通过域名解析将用户提供的域名映射到相应的 IP 地址。

FTP

FTP(File Transfer Protocol):FTP 是一种用于在网络上传输文件的协议。FTP 提供了文件的上传、下载、删除和重命名等功能,是一种常用的文件传输协议。

Socket

Socket:Socket 是操作系统提供的一种通信机制,用于在网络中实现进程间的通信。它提供了一组函数接口,使得应用程序可以通过网络进行交互。

WebSocket

WebSocket:WebSocket 是一种在单个 TCP 连接上进行全双工通信的协议。它允许客户端和服务器之间进行实时双向数据传输,常用于实时应用程序和聊天室等场景。

RPC

RPC(Remote Procedure Call):远程过程调用是一种计算机通信协议,它允许一个程序调用另外一个程序中的函数或方法,而不需要显式地处理底层网络通信细节。RPC 使得分布式系统中的不同节点可以相互调用和交互,就像本地调用一样简单。

IPv4 & IPv6

IPv4(Internet Protocol version 4)和 IPv6(Internet Protocol version 6):它们是 Internet Protocol(IP)的两个版本。IPv4 是目前广泛应用的 IP 版本,但由于地址空间有限,IPv6 应运而生,提供了更大的地址空间和其他改进。

NAT

NAT(Network Address Translation):NAT 是一种网络地址转换技术,它用于在私有网络和公网之间进行 IP 地址映射,使得多个设备可以共享一个公网 IP 地址。

VPN

VPN(Virtual Private Network):VPN 是一种通过公共网络(如 Internet)建立私密连接的技术。使用 VPN 可以实现远程访问、加密通信和保护隐私。

CDN

CDN(Content Delivery Network):CDN 是一种通过在全球多个地点部署服务器来加速内容分发的技术。CDN 可以提供更快的网页加载速度和更好的用户体验。

ARP

ARP(Address Resolution Protocol):ARP 是一种用于在局域网中将 IP 地址解析为 MAC 地址的协议。它将 IP 地址与 MAC 地址进行映射,使通信能够在局域网上进行。

SSL & TLS

SSL(Secure Sockets Layer)和 TLS(Transport Layer Security):SSL 和 TLS 是用于保护网络通信安全的协议。它们提供了加密和身份验证机制,用于确保数据的安全性和完整性。

SSH

SSH(Secure Shell):SSH 是一种用于远程登录和安全传输的协议。它提供了加密的远程访问和命令执行功能,保护了网络通信的安全性。

OAuth

OAuth(Open Authorization):OAuth 是一种授权框架,用于授权第三方应用程序访问用户的资源。它允许用户在不将用户名和密码提供给第三方应用的情况下授权访问。

CORS

CORS(Cross-Origin Resource Sharing):CORS 是一种机制,用于解决跨域资源访问的权限问题。通过配置服务器允许特定的跨域请求,实现浏览器的跨域资源共享。

RTO

RTO 是指 TCP 等协议中的重传超时(Retransmission TimeOut)。在 TCP 中,当发送端发送一个数据段后,接收端会发送一个确认(ACK)给发送端,告知已成功接收到数据段。如果发送端在一段时间内没有接收到确认,它会认为数据段丢失了,于是触发重传机制重新发送数据段。

ARQ

ARQ 是自动重传请求(Automatic Repeat reQuest)的缩写,是一种数据传输中利用反馈机制实现可靠性的协议。

MTU

MTU 是最大传输单元(Maximum Transmission Unit)的缩写,指的是在计算机网络中能够传输的最大数据包的大小。

滑动窗口

滑动窗口(Sliding Window):滑动窗口是一种流量控制机制,用于在两个通信节点之间调整数据的发送和接收速率。发送方维护一个滑动窗口,它表示了接收方能够接受的数据量。通过适时调整滑动窗口的大小,可以实现流量控制和拥塞控制,从而提高通信的效率和可靠性。

多路复用

多路复用(Multiplexing):多路复用是一种将多个独立的数据流合并为一个复合数据流进行传输的技术。在网络编程中,常用的多路复用技术有基于 TCP 的 Select、Poll 和 EPoll,以及基于 UDP 的 Multiplexing。多路复用可以提高网络资源利用率,实现同时处理多个连接的能力。

负载均衡

负载均衡(Load Balancing):负载均衡是一种将网络或服务器的负载分配到多个设备上的技术。负载均衡可以提高系统性能、可靠性和可伸缩性。

网络包

网络包(Network Packet):网络包是将数据从一个节点发送到另一个节点的网络通信单元。它包含了数据内容、源地址、目标地址、协议标识等信息。在网络通信过程中,数据会被分割成一个个网络包进行传输。

丢包

丢包(Packet Loss):丢包指的是在网络通信过程中部分或全部数据包丢失的情况。丢包可能由网络拥塞、信号干扰、设备故障等原因引起。丢包会影响数据的完整性和及时性,可能导致数据传输的错误或延迟。

抓包

抓包(Packet Capturing):抓包是指通过网络抓包工具,捕获网络通信过程中的数据包,分析和查看网络数据。抓包工具可以用来诊断网络问题、分析通信协议、监控网络流量等。

粘包

粘包(Packet Sticking):粘包指的是在网络通信中,多个独立的数据包被连续地接收到接收方,形成一个粘在一起的数据块。粘包通常发生在发送方连续发送多个小数据包,而接收方未及时消耗处理数据的情况下。

防火墙

防火墙(Firewall):防火墙是一种网络安全设备,用于监控和控制网络流量,保护网络免受未授权访问、恶意攻击和数据泄露等威胁。

拥塞控制

拥塞控制(Congestion Control):拥塞控制是一种网络流量管理机制,用于确保网络中的链路和节点不被过多的流量淹没。拥塞控制算法可以根据网络的拥塞程度动态调整数据发送速率,以避免网络拥塞和丢包,从而提高网络的稳定性和性能。

单工

单工(Simplex):数据只能单向传送为单工

半双工

半双工(Half Duplex):数据能双向传送,但不能同时双向传送为半双工

全工

全工(Full Duplex):数据能双向传送则为全双工

  • 5
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值