趣谈web协议

本文介绍了TCP协议的三次握手过程以及网络程序通信的基本流程,包括客户端和服务器端的交互步骤。同时,讲解了socket作为通信接口的角色,以及HTTP、HTTPS协议与DNS的工作原理。此外,还以故事形式生动地阐述了TCP协议的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一.前言

ip地址:网络设备中的一个地址。

ipv4:目前使用的地址。由点号的十进制组成。

ipv6:未来使用的地址。由冒号的十六进制组成。


Windows的IP地址查看命令:

ipconfig

端口:可以理解为设备与外界通讯的出口。

端口号:它会用数字代表。例如端口号默认是8080。

进程:正在运行的程序。

套接字(socket):两个程序进行通信时的一个端点。(网络协议通信的接口)

二.TCP协议

1.传输控制协议

① 创建连接。

② 传输数据。

③ 关闭连接。

总结:tcp类似于生活中的打电话,先接通,再说话,再挂电话。

特点:可靠性、安全性高。

2.TCP三次握手

① 客户端发送请求,告诉服务端:自己准备好了。

② 服务端发出响应,告诉客户端:我也准备好了。

③ 建立连接,数据就能传输了。


UDP:用户数据报协议。

它是无连接的协议,类似于广播通知,一条数据可以让很多人都知道。

特点:数据不安全。

三.网络程序通信的流程

① 通过IP地址找到网络中的设备。

② 通过端口号找到对应进程的端口。

③ 传输数据需要使用TCP协议,保证数据的可靠性。

socket:进程之间通信的一个工具,好比现实生活中的插线板。

如果家用电器要进行工作,就可以用socket来完成。

1.客户端程序

它运行在用户设备上。

步骤说明:

① 创建客户端socket

② 和服务端socket建立连接。

③ 发送数据。

④ 接受数据。

⑤ 关闭socket。

2.服务端程序

它运行在服务器设备上。

步骤说明:

① 创建服务端socket

② 绑定端口号。

③ 设置监听。

④ 等待客户端的连接请求。

⑤ 接受数据。

⑥ 发送数据。

⑦ 关闭socket。

四.socket中的两种原理

send原理:它不能直接把数据发送给服务端,必须先把数据写入内存中的空间(发送缓存区),再由操作系统控制网卡把内存中的数据发送给服务端网卡。

recv原理:它不能直接从客户端接收数据,必须由操作系统控制网卡接收数据,把数据写入内存中的空间(接收缓存区),再获取客户端发送的数据。

五.其他

https://www.baidu.com/fruit

HTTP协议:超文本传输协议,可以理解成通信格式,例如,在国内访问国外的网站(通过网址去访问),要遵循http协议。

HTTPS协议:加密版的。

DNS:域名解析。(将域名解析成ip地址)

例如,com是域名。

URL:统一资源定位符,可以理解为网络资源,也就是网址。

例如,fruit是网络资源。

FTP:文件传输协议。可以理解为下载或上传。

六.故事

     有一天,我穿越到了没有电话的时代。这时候,我就想到了tcp协议,它能帮助我与外界取得联系,因为它与打电话的原理差不多。

     我开始行动了,首先找到端口,将自己的ip地址暴露给自己的同伴。然后,我要想发出请求,让外界知道我的存在,这就用到了http协议,同样能与外界取得联系。http协议基于tcp协议,相当于我的通讯设备升级了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值