DNS、IP、TCP/UDP、HTTP/HTTPS、三次握手

一、WWW

WWW: World Wide Web 万维网

Internet提供了很多服务,其中包括WWW(网页服务)、FTP(文件传输)、E-mail(电子邮件)、Telnet(远程登录)等等。www是用浏览器访问网页的服务,所以网站的主页的域名前需要加www。而随着网站服务类型的增加,不同的二级或三级域名对应不同的业务,而业务的处理任务会分配到多个服务器,所以,不再需要使用www来标注主页,很多网站都会做DNS解析www,原因是尊重用户的习惯。(国外网站基本不用www标注主页 github)。

二、DNS解析

(1)DNS解析

DNS:Domain Name Server(域名服务器)

作用:域名与对应的IP转换的服务器

特征:DNS中保存了一张域名与对应的IP地址的表
           一个域名对应一个IP地址,一个IP地址可以对应多个域名

gTlD:generic Top-Level DNS Server 顶级域名服务器
           为所有.com、.net…后缀做域名解析的服务器

(2)DNS解析图解

在这里插入图片描述

三、IP

(1)IP

英文:Internet Protocol Address
中文:互联网协议地址、IP地址
作用:分配给用户上网使用的互联网协议
分类:IPv4 IPv6 其它
形式:192.168.0.1 (长度32位 (4个字节),十进制表示) (IPv4)

v:verson(版本)
4或6:版本号
优势:IPv6地址空间更大 (8组 (128位),十六进制)
           路由表更小
           组播支持以及对流支持增强
           对自动配置的支持
           更高的安全性
           ABCD:EF01:2345:ABCD:EF01:2345:6789

(2)端口号

IP地址:上海迪士尼乐园的地址
              IPv4或IPv6
端口号:乐园中的不同游乐设施
              80/443

解释:找到一个IP就像找到了乐园的地址,你可以到乐园,相当于可以访问到IP所对应的服务器,IP加端口号,相当于到乐园去玩不同的项目,每个项目其实就是一个端口号。

总结:每一个端口对应的是一个服务器的一个业务,访问一个服务器的不同端口相当于访问不同的业务。

端口号范围:0-65535
默认端口:http协议下(80)、https协议下(443)、FTP协议下(20/21)

IP:上海市浦东新区 域名:上海迪士尼乐园 端口:乐园海盗船的入口

四、TCP与UDP

(1)TCP(打电话)

TCP:Transmission Control Protocol 传输控制协议
           TCP是面向连接的,必须要有可靠的连接才能够通讯的一种传输控制协议

特点:面向连接(收发数据前,必须建立可靠的连接)
建立链接基础:三次握手
应用场景:数据必须准确无误的收发
                  HTTP请求、FTP文件传输、邮件收发
优点:稳定、重传机制、拥塞控制机制、断开连接
缺点:速度慢、效率低、占用资源、容易被攻击(三次握手 -> DOS、DDOS攻击)

TCP/IP协议组:提供点对点的连接机制,制定了数据封装、定址、传输、路由、数据接收的标准

(2)UDP(喇叭叫人)

UDP:User Data Protocol 用户数据报协议

特点:面向无连接(无可靠的协议,无状态传输机制)
无连接信息发送机制
应用场景:无需确保通讯质量且要求速度快、无需确保信息完整
信息收发、语音通话、直播(QQ)
优点:安全、快速、漏洞少(UDP flood攻击)
缺点:不可靠、不稳定、容易丢包

总结:只要目的的源地址、端口号、地址、端口号确定,则可以直接发送信息报文,但不能保证一定能收到或收到完整的数据

五、HTTP与HTTPS

(1)HTTP与HTTPS

HTTP:HyperText Transfer Protocol 超文本传输协议
定义:客户端和服务器端请求和答应的标准,用于从WEB服务器传输超文本到本地浏览器的传输协议

HTTP请求:按照协议规则先向WEB服务器发送的将超文本传输到本地浏览器的请求

HTTPS:HyperText Transfer Protocol Secure 超文本传输安全协议
定义:HTTP的安全版(安全基础是SSL/TLS)

SSL:Secure Sockets Layer 安全套接层
TLS:Transport Layer Security 传输层安全
为网络通信提供安全及数据完整性的一种安全协议,对网络连接进行加密

(2)HTTP与HTTPS的区别

  1. HTTP是不安全的(监听和中间人攻击等手段,获取网站账户信息和敏感信息) HTTPS可防止被攻击
  2. HTTP协议的传输内容都是明文,直接在TCP连接上运行,客户端和服务器都无法验证对方身份
  3. HTTPS协议的传输内容都被SSL/TLS加密,且运行在SSL/TLS上,SSL/TLS运行在TCP连接上,所以数据传输是安全的

六、三次握手

(1)建立TCP连接的前奏

标志位(数据包):
SYN:Synchronize Sequence Numbers 同步序列编号
ACK:Acknowledgement 确认字符

状态:
LISTEN:侦听TCP端口的链接请求
(我等着尼发送连接请求呢)
SYN-SENT:在发送连接请求后等待匹配的链接请求
(我发送了连接请求,我等你回复哈)
SYN-RECEIVED:在收到和发送一个连接请求后等待对连接请求的确认
(我收到你的连接请求了哈,我等你回复我)
ESTABLISHED:代表一个打开的连接,数据可以传送给用户
(建立建立了哈,我跟你说一下)

(2)建立TCP的三次握手

在这里插入图片描述

为什么最后一次没有发送SYN包?
因为SYN包是需要服务器回复才发送,连接建立完成后就不需要回复SYN包了,所以最后一次就没有发送

(3)建立TCP的三次握手总结

第一次握手:客户端向服务器发送SYN标志位(序列是J),并进入SYN_SEND状态(等待服务器确认状态)。

第二次握手:服务器收到来自客服端的SYN J,服务端会确认该数据包已收到并发送ACK标志位(序号是J+1)和SYN标志位(序号是K),服务器进入SYN_RECV(请求接收并等待客户端确认状态)。

第三次握手:客户端进入连接建立状态后,向服务器发送ACK标志位(序号是K+1)确认客户端已收到建立连接确认,服务器收到ACK标志位后,服务端进入连接已建立状态。

确认包就是上一次发送包的序号+1,下一次的发送包就是上一次的确认包,确认包就是上一次的发送包的序号+1

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值