DNS解析、IP、TCP与UDP、 HTTP与HTTPS、三次握手

WWW

www:World Wide Web
Internal提供了很多服务,其中包括WWW(网页服务)、FTP(文件传输)、E-mail(电子邮件)、Telent(远程登陆)等等,www是用浏览器访问网页的服务,所以网站的主页的域名前需要加www,而随着网站服务类型的增加,不同的二级或三级域名对应不同的业务,而业务的处理任务会分配到多个服务器,所以,不需要使用www来标注主页,很多网站都还会做DNS解析www
www协议,网页服务协议

DNS

DNS:Domain Name Server(域名服务器)
作用:域名与对应的IP转换的服务器
特征:DNS中保存了一张域名与对应IP地址的表
一个域名对应一个IP地址,一个IP地址可以对应多个域名
gTLD: generic Top-Level DNS Server顶级域名服务器,为所有.com .net后缀做域名解析的服务器
在这里插入图片描述

IP

Internet Protocol Address 互联网协议地址、IP地址
作用:分配给用户上网使用的互联网协议
分类:IPV4 IPV6 其他
形式: 192.168.0.1 长度32位 4个字节十进制表示
v:version
4或6: 版本号
优势:IPv6地址空间更大(8组 128位,十六进制)
路由表更小
组播支持以及对流支持增强
对自动配置的支持
更高的安全性
IP端口号PORT
每一个端口号对应的就是一个服务器的一个业务,访问一个服务器的不同端口就相当于访问不同的业务
端口号的范围: 0-65535

TCP

TCP: Transmission Control Protocol 传输控制协议
特点: 面向连接(收发数据前,必须建立可靠的连接)
建立连接的基础:三次握手
应用场景: 数据必须准确无误的收发
HTTP请求、FTP文件传输、邮件收发
优点:稳定、重传机制、拥塞控制机制、端开连接
缺点:速度慢、效率低、占用资源、容易被攻击(三次握手 DOS DDOS攻击)
TCP/IP协议组: 提供点对点的连接机制,制定了数据封装、定址、传输、路由、数据接收的标准
TCP运输连接的建立和释放是每一次面向连接通信必不可少的过程
TCP运输连接有三个阶段
1、建立TCP连接
2、数据传送
3、释放连接
在这里插入图片描述

UDP

特点:面向无连接(不可靠传输、无状态传输机制)
无连接信息发送机制
应用场景:无需保证通讯质量且要求速度快、无需确保信息完整
消息收发、语音通话、直播
缺点:不可靠、不稳定、容易丢包
只要目的源地址、端口、地址、端口号确定,则可以直接发送信息报文,但不能保证一定能受到或收到完整的数据

HTTP与HTTPS

HTTP:Hyper Text Transfer Protocol超文本传输协议
定义: 客户端与服务器请求和应答的标准,用于从WEB服务器传输超文本到本地浏览器的传输协议
HTTP请求:按照协议规则先向WEB服务器发送的将超文本传输到本地浏览器的请求
HTTPS:Hyper Text Transfer Protocol Secure 超文本传输协议
定义:HTTP的安全版(安全基础是SSL/TLS)
SSL: Secure Sockets Layer 安全套接层
TLS: Transport Layer Security 传输层安全
为网络通信提供安全及数据完整性的一种安全协议,对网络连接进行加密
区别:1、HTTP是不安全的(监听和中间人攻击等手段,获取网站账户信息和敏感信息)HTTPS可以防止被攻击
2、HTTP协议传输的内容都是明文,直接在TCP连接上运行,客户端和服务器都无法验证对方身份
3、HTTPS协议的传输内容都被SSL和TSL加密,且运行在SSL/TSL上,SSL/TSL运行在TCP连接上,所以数据传输是安全的

TCP三次握手建立连接

TCP客户和TCP服务握手需要再它们之间交换三个TCP报文段,最开始两端的TCP进程都处于关闭状态,一开始TCP服务器进程首先创建传输控制块
1、客户端向服务端发送SYN标志位,并进入SYN _SEND状态 (等待服务器确认状态)
2、服务器收到来自客户端的SYN J,服务端会确认该数据包已经收到并发送ACK标准(序号是J+i) 和标志位(序号是K),服务器进入SYN_RECV(请求接收并等待客户端确认状态)
3、客户端进入连接建立状态后,向服务器发送ACK标志位(K+I)确认客户端已经收到建立连接确认,服务器收到ACK标志位后,服务端进入已经建立状态
在这里插入图片描述
为什么TCP客户进程最后还要发送一个普通的TCP确认报文段,是否多余?或者说能否利用两报文握手建立连接呢?
不多余,不能简化为两报文握手
如果出现这种情况:如果是两次握手
在这里插入图片描述

TCP客户进程发出一个TCP连接请求报文段,但该报文段再某些网络节点长时间滞留了,这必然会造成该报文段的超时重传,假设重传的报文段被TCP服务进程正常接收了,TCP服务器进程给TCP客户进程发送一个TCP连接请求确认报文段,并进入连接已建立状态,当TCP服务器进程发送完TCP连接请求确认报文段后,进入连接已建立状态,而不像三报文握手那样进入同步已接收状态,并等待TCP客户进程发来针对TCP连接请求确认报文段的普通确认报文段。TCP客户进程收到TCP连接请求确认报文段后,进入TCP连接已经建立状态,但不会给TCP服务器进程发送针对该报文段的普通确认报文段,现在双方都处于连接已建立状态,可以相互传输数据,并通过四报文挥手释放连接,一段时间后滞留再网络中的失效的那个TCP连接请求报文段到达了服务器进程,服务器进程会误认为,这是客户端又发起了一起新的连接请求,会发送连接请求确认报文段,并进入连接已建立状态,而此时的客户进程仍处于关闭状态,这就导致了资源的浪费
总结:

采用三报文握手而不是两报文握手是为了防止已失效的连接请求报文段突然又传送到TCP服务器,因而导致错误
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值