目录   Python网络编程02/基于TCP协议的socket简单的通信1.昨日内容回顾2.socket2.1 socket套接字2.2 基于TCP协议的socket简单通信  Python网络编程02/基于TCP协议的socket简单的通信1.昨日内容回顾1.单播:单独联系某一个人
2.广播:给所有人发送消息(群发)
3.比特流:bit就是0101跟水流一样的源源不断的发送01010101
4            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-10-17 10:40:20
                            
                                63阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、它们之间的关系
TCP/IP协议是分层的。以太网帧的数据帧在链路层,IP包在网络层,TCP/UDP在传输层,TCP/UDP中的数据在应用层。应用层TCP/UDP中的数据传输层TCP/UDP网络层IP包数据链路层以太网帧物理层 上一层的数据连同该层的控制信息打包交给下一层,直到最底层。所以他们之间的关系:以太网帧{IP包{TCP/UDP{数据}}}。
二、以太网帧(数据链路层)
目前            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-30 22:29:25
                            
                                240阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            根据rfc894的说明,以太网封装IP数据包的最大长度是1500字节,也就是说以太网最大帧长应该是以太网首部加上1500,再加上7字节的前导同步码和1字节的帧开始定界符,具体就是:7字节前导同步码 + 1字节帧开始定界符 + 6字节的目的MAC + 6字节的源MAC + 2字节的帧类型 + 1500 + 4字节的FCS。    按照上述,最大帧应该是1526字节,但是实际上我们            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2024-03-11 16:11:09
                            
                                269阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Python实现以太网帧
## 介绍
欢迎小白朋友加入开发者的行列!在本篇文章中,我将教你如何使用Python实现以太网帧。
## 什么是以太网帧?
以太网帧是计算机网络中用于在物理层和数据链路层之间传输数据的基本单位。它包含了数据、源地址、目标地址以及其他与网络通信相关的控制信息。
## 实现步骤
为了更好地理解实现过程,我们将按照以下步骤来实现Python以太网帧。
| 步骤 |            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-10-08 07:51:58
                            
                                132阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            以太网与以太网帧格式
            
        
        
            
            很多人将局域网(Local Area Network,LAN)和以太网(Ethernet)混为一谈,这个误解大概是因为和其他局域网技术比较起来,以太网技术使用得是如            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2011-09-09 09:33:08
                            
                                1469阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            一、网络基础认知 1.1网络认识 (1)操作系统:调用硬件资源的,硬件----操作系统----程序 
    (2)网络基础
            物理层:(电缆 双绞线  无线电波)---二边通过这个线只能相互发高低电压,高是1 低是0
            数据链路层:(把物理层得到的0101封装成组,多少位为一组
                     eg:以太网            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-19 14:30:33
                            
                                268阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            链路层3.2.2 以太网帧格式帧校验序列/循环冗余校验帧大小802.1p/q:虚拟局域网和Oos标签802.1AX :链路聚合(以前的802.3ad) 3.2.2 以太网帧格式48位(6字节)的目的地址(DST)和源地址(SRC)字段 他们也叫MAC地址,链路地址,物理地址。 以太网帧的目的地址也允许寻址到多个站点(广播或组播)源地址的后面跟着一个类型字段,或者长度字段,在多数情况下,它用于确定            
                
         
            
            
            
            OSI 模型的数据链路层(第 2 层)实际上由两个子层组成:媒体访问控制 (MAC) 子层和逻辑链路控制 (LLC) 子层。 MAC 子层控制设备交互。 LLC 子层处理寻址和复用。网络连接的物理寻址存在于数据链路层。在数据链路层传输的协议单元称为帧(frame)。 数据链路层将数据位组合成称为帧的实体。 以太网等网络拓扑存在于数据链路层。 网络交换机是数据链路层最常见的网络设备。以太网帧概述在以            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-12-15 08:59:21
                            
                                431阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            目录一、前言二、以太网的帧格式Preamble(前导码):SFD(帧开始定界符):Destination Address,Source Address:Type/Len(类型/长度):Data(数据):FCS(Frame Check Sequence)(帧校验码):一、前言以太网的帧格式对于我们理解mac地址与局域网间通信有着很大的帮助。这篇博客主要记录了以太网的帧格式与各个字段对应的内容。二、以            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-06-08 17:21:06
                            
                                177阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            # 实现Python发送以太网帧的步骤
## 简介
以太网帧是计算机网络中最基本的数据传输单位,它是在以太网中传输数据的基本单位。在Python中,我们可以使用socket库来实现发送以太网帧的功能。本文将详细介绍实现这一功能的步骤,并提供相应的代码示例。
## 流程图
```mermaid
journey
    title 实现Python发送以太网帧的步骤
    section            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-08-29 09:36:47
                            
                                433阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            # Python收发以太网帧的基础入门
以太网(Ethernet)是现代计算机网络中最常见的技术之一,其协议定义了在局域网(LAN)中传输数据的方式。在以太网中,数据被封装为以太网帧,然后在网络中传送。通过Python编程,可以实现以太网帧的收发,这在网络分析、故障排除或网络应用开发中非常有用。
## 以太网帧的结构
在讨论如何收发以太网帧之前,我们需要了解以太网帧的基本结构。一个典型的以太            
                
         
            
            
            
            历史上以太网帧格式有五种: 1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准; 2 Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA。这是最常见的一种以            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-10-25 13:18:37
                            
                                171阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            现在主要用的是Ethernet II(以太网2)的帧格式目标地址(6字节)源地址(6字节)类型(2字节)数据(46~1500字节)校验位(4字节)类型说明该帧封装的是什么格式的数据数据段,存放本次传输的数据大小fcs:数据校验位问题:为什么数据是从46开始?因为以太网帧需要有46位的填充位,当实际数据为空的时候就使用46个无意义的数据填充到数据段上。所以从此可以得到以太网帧最大传输的数据量为:6+            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-09-04 14:27:17
                            
                                590阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            untagged|DA|SA|TYPE|DATA|CRC|6B-6B-2B-?-4B帧最小64B,最大1518Bvlan Tagged|DA|SA|TAG|TYPE|DATA|CRC|6B-6B-4B-2B-?-4B帧最小68B,最大1522B            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2011-07-02 12:00:31
                            
                                541阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            历史上以太网帧格式有五种: 1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准; 2 Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA。这是最常见的一            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2021-07-06 10:33:02
                            
                                2281阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            历史上以太网帧格式有五种: 1 Ethernet V1:这是最原始的一种格式,是由Xerox PARC提出的3Mbps CSMA/CD以太网标准的封装格式,后来在1980年由DEC,Intel和Xerox标准化形成Ethernet V1标准; 2 Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA。这是最常见的一            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-03-16 11:32:04
                            
                                1018阅读
                            
                                                                             
                 
                
                             
         
            
            
            
             
为了标识以太网上的每台主机,需要给每台主机上的网络适配器(网络接口卡)分配一个唯一的通信地址,即Ethernet负责为网络适配器制造厂商分配Ethernet地址就已被烧录到网络适配器中。所以,有时我们也将此地址称为烧录地址(Burned-In-Address地址长度为48所示。其中,前3字节为网络适配器编号。
地址
的OSI(Logic Line Control(Media Acce            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                            精选
                                                        
                            2008-09-20 02:38:53
                            
                                1368阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            以太网帧格式:1.以太网帧由5个字段组成1>前两个字段分别为6字节长的目的地址和源地址地段。2>第三个字段是2字节的类型字段,用来标志上一层使用的是什么协议。l  类型字段的值为0x0800时,表示上层使用的是IP数据报。l  类型字段的值为0x0806时,表示上层为ARP数据报l  类型字段的值为0x8137时,表示该帧是有Novell IPX发过来的。            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2012-03-13 11:06:00
                            
                                1127阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            struct ethhdr {unsigned char h_dest[ETH_ALEN]; /* destination eth addr*/unsigned char h_source[ETH_ALEN]; /* source ether addrbu            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-06-01 10:19:25
                            
                                422阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            在网络通信中,以太网帧是传输数据的基本单元,而使用Java处理以太网帧则面临着多个技术挑战。在我们最近的项目中,我们需要使用Java解析和处理以太网帧的数据。项目的成功实施对我们后期的业务扩展至关重要。因此,本文将详细记录解决“Java以太网帧”问题的过程,包括背景定位、演进历程、架构设计、性能攻坚、故障复盘和扩展应用六个部分。
### 背景定位
在项目初期,我们面临着多项技术痛点,特别在于: