博客
关于我
【第六周】第 2 节:TCP/IP
阅读量:328 次
发布时间:2019-03-04

本文共 955 字,大约阅读时间需要 3 分钟。

第六周-第二节课:理解TCP/IP协议

TCP/IP协议的作用

TCP/IP并不是单一的协议,而是一组协议的集合,统称为TCP/IP协议族。它起到了连接应用程序和硬件之间的重要桥梁,充当了上层应用和下层硬件之间的中间层。例如,手机应用通过路由器连接光猫,再通过运营商网络进入互联网。

TCP/IP三次握手

为了建立可靠的TCP连接,TCP协议采用了三次握手机制,确保数据传输的可靠性和稳定性。以下是三次握手的具体过程:

  • 客户端向服务端发送SYN数据包,表明请求建立连接。服务端确认客户端的发送能力正常。

  • 服务端返回SYN-ACK数据包,确认自己能够正常接收数据,同时也发送了自己的序列编号。

  • 客户端返回ACK数据包,确认已经接收到服务端的SYN-ACK信息,双方完成握手,建立连接。

  • 尽管三次握手已经完成了ACK确认,但服务端仍需返回SYN数据包,以确认客户端发送的信号确实是其发送的信号,确保通信的正常性。

    TCP/IP四次挥手

    当需要关闭TCP连接时,TCP协议采用四次挥手机制。以下是以客户端为主动关闭方的四次挥手过程:

  • 客户端发送FIN数据包,关闭客户端到服务端的连接通道。

  • 服务端收到FIN后,返回ACK数据包,确认客户端到服务端的连接通道已关闭。

  • 服务端发送FIN数据包,关闭服务端到客户端的连接通道。

  • 客户端返回ACK数据包,确认服务端到客户端的连接通道已关闭。

  • HTTPS加密过程

    HTTPS是基于TCP/IP协议的安全版本,采用SSL/TLS协议加密通信过程。以下是HTTPS加密的具体步骤:

  • 客户端向服务端发送通信请求。

  • 服务端返回证书和密钥,客户端验证证书的真实性。

  • 客户端完成认证后,使用公钥对数据进行非对称加密,并发送给服务端。

  • 服务端使用私钥解密加密数据,并返回明文。

  • 此后,服务器和客户端之间的通信采用对称加密,确保通信的安全性。

    中间人攻击

    中间人攻击是指未经授权的第三方插入到客户端和服务端之间的通信链路,伪造客户端或服务端的身份,窃取数据或阻止正常通信。中间人攻击的条件主要包括:

  • 客户端需要主动信任中间人的证书。

  • 中间人伪造客户端或服务端的身份,以确保其插入的数据包能够被接收方接受。

  • 通过以上内容,可以更全面地理解TCP/IP协议的工作原理及其在实际网络通信中的重要性。

    转载地址:http://rtwh.baihongyu.com/

    你可能感兴趣的文章
    python | Python 中检查一个数字是否是三态数
    查看>>
    python | Python 蒙特卡洛模拟
    查看>>
    python | Python中的类多态:方法重写和动态绑定
    查看>>
    python | Python模块缓存:sys.modules机制
    查看>>
    python | pyupgrade,一个有趣的 Python 库!
    查看>>
    Python | qutip,一个高级的 Python 库!
    查看>>
    python | reflex,一个无敌的 Python 库!
    查看>>
    python | reloading,一个强大的 Python 库!
    查看>>
    python | rich,一个无敌的 Python 库!
    查看>>
    python | rlax,一个超强的 强化学习领域 Python 库!
    查看>>
    python | rpyc,一个超实用的 Python 库!
    查看>>
    python | rq,一个无敌的 关于Redis 的Python 库!
    查看>>
    python读取字符串指定位置字符_python要怎么截取指定位置的字符串呢?
    查看>>
    python | scikit-llm,一个神奇的 Python 库!
    查看>>
    python | sentry,一个超酷的 关于错误监控工具 Python 库!
    查看>>
    python | shiv,一个超酷的 打包工具 Python 库!
    查看>>
    python | six,一个神奇的 Python 库!
    查看>>
    Python读取图片的几种方法供net使用
    查看>>
    python | spacy,一个神奇的 Python 库!
    查看>>
    python | sqlmap,一个实用的 Python 库!
    查看>>