以太网接口与Linux网络驱动程序课件

上传人:我*** 文档编号:141120763 上传时间:2020-08-04 格式:PPT 页数:20 大小:477.50KB
返回 下载 相关 举报
以太网接口与Linux网络驱动程序课件_第1页
第1页 / 共20页
以太网接口与Linux网络驱动程序课件_第2页
第2页 / 共20页
以太网接口与Linux网络驱动程序课件_第3页
第3页 / 共20页
以太网接口与Linux网络驱动程序课件_第4页
第4页 / 共20页
以太网接口与Linux网络驱动程序课件_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《以太网接口与Linux网络驱动程序课件》由会员分享,可在线阅读,更多相关《以太网接口与Linux网络驱动程序课件(20页珍藏版)》请在金锄头文库上搜索。

1、1,以太网接口与Linux网络驱动程序,刘淼 threewaterup-,2,以太网接口的基本知识,1、传输编码: 曼彻斯特编码&差分曼彻斯特编码,3,以太网协议,以太网的物理传输帧 (IEEE802.3 ),PR:同步位,收发双方的时钟同步,也指明传输的速率(10M、100M) SD:分隔位,表示下面跟着的是真正的数据,而不是同步时钟 DA:目的地址,以太网的地址为48位地址。如果为都为F,则是广播地址 SA:源地址,48位,表明该帧的数据是哪个网卡发的,即发送端的网卡地址TYPE:类型字段,表明该帧的数据是什么类型的数据。如:0800H 表示数据为IP包 DATA:数据段,该段数据不能超过

2、1500字节。 PAD:填充位。以太网帧传输的数据包最小不能小于60字节, 当数据段不足46字节时,后面补000000.(当然也可以补其它值)FCS:32位CRC数据校验位。该校验由网卡自动完成,4,以太网的应用,PR,SD,PAD,FCS这几个数据段是由网卡自动产生的;只需要理解DA、SA、TYPE、DATA四个段的内容 所有数据位的传输由低位开始(传输的位流使用曼彻斯特编码) 以太网的冲突退避算法是由硬件自动执行的 DA+SA+TYPE+DATA+PAD最小为60字节,最大为1514字节 以太网卡可以接收三种地址的数据,一个是广播地位,一个是多播地址(在嵌入式的环境中一般不用),一个是它自

3、已的地址 任何两个网卡的物理地址都是不一样的,是世界上唯一的,网卡地址由专门机构分配。,5,嵌入式的以太网方案,嵌入式处理器网卡芯片(MAC+PHY) 对嵌入式处理器没有特殊要求,通用性强 处理器和网络数据交换通过外部总线,速度慢,不适合于高速网络 带有以太网络接口的嵌入式处理器 处理器面向网络应用,集成MAC控制器 处理器和网络数据交换通过内部总线,速度快,6,集成了MAC控制器的ARM和PHY芯片的连接,7,10BaseT的连接方式,8,TCP/IP 协议的层次,9,嵌入式以太网中主要处理的协议,ARP(Address Resolation Protocol)地址解析协议 ICMP (In

4、ternet Control Messages Protocol)网络控制报文协议 IP(Internet Protocol) 网际协议 TCP(Transfer Control Protocol) 传输控制协议 UDP(User Datagram Protocol)用户数据报协议,10,ARP协议,网络层用32 bit的IP地址来标识不同的主机,而链路层使用48 bit的物理(MAC)地址来标识不同的以太网接口。只知道目的主机的IP地址并不能发送数据帧给它,必须知道目的主机网络接口的MAC地址才能发送数据帧。 ARP的功能是实现从IP地址到对应物理地址的转换。 源主机发送一份包含目的主机IP

5、地址的ARP请求数据帧给网上的每个主机,称作ARP广播,目的主机的ARP收到这份广播报文后,识别出这是发送端在寻问它的IP地址,于是发送一个包含目的主机IP地址及对应的MAC地址的ARP回答给源主机。 每台主机上都有一个ARP高速缓存,存放最近的IP地址到硬件地址之间的映射记录。通常每一项的生存时间为20分钟,11,ICMP协议,IP层的附属协议,IP层用它来与其他主机或路由器交换错误报文和其他重要控制信息。 ICMP报文是在IP数据报内部被传输的。 两个实用的网络诊断工具,Ping和Traceroute(Tracert),都是利用该协议工作的。,12,IP协议,IP工作在网络层,是TCP/I

6、P协议族中最为核心的协议。所有的TCP,UDP,ICMP以及IGMP数据都以IP数据报格式传输。 IP数据报最长可达65535字节,其中报头占32 bit的数目。包含各32 bit的源IP地址和目的IP地址。在嵌入式应用中,简化设计,IP数据报长度等于数据链路层的数据长度。,13,TCP协议,TCP是一个面向连接的可靠的传输层协议。TCP为两台主机提供高可靠性的端到端数据通信。主要包括: 发送方把应用程序交给它的数据分成合适的小块,并添加附加信息(TCP头),包括顺序号,源、目的端口,控制、纠错信息等字段,称为TCP数据报。并将TCP数据报交给下面的网络层处理。 接受方确认接收到的TCP数据报

7、,重组并将数据送往高层。,14,UDP协议,UDP是一种无连接不可靠的传输层协议。 把应用程序传来的数据加上UDP头(包括端口号,段长等字段),作为UDP数据报发送出去,但是并不保证它们能到达目的地。可靠性由应用层来提供。就象发送一封写有地址的一般信件,却不保证它能到达。,15,Linux网络驱动程序体系结构,16,Linux系统内核的网络设备结构,结构体struct net_device来表示网络设备在内核中的运行情况 所有的网络设备都是通过以dev_base为头指针的设备链表来管理的 dev_base在内核源码的drivers/net/space.c文件中被定义: struct net_d

8、evice *dev_base = 设备链表的定义与初始化 内核中的网络设备的初始化是通过net_dev_init函数实现的 drivers/block/genhd.c中有的device_init函数的定义 网络设备的模块加载,通过register_netdevice(net/core/dev.c)注册,17,Ne2000兼容的网卡驱动程序分析,Linux内核中Ne2000设备驱动程序是drivers/net/ne.c和drivers/net/8390.c Ne2000网卡的检测在drivers/net/ne.c的ne_probe函数 可以在ne_probe函数中,为特定的平台分配资源 NE2

9、000网卡的主要检测工作,是在ne_probe1函数中完成的,18,网络的应用与测试,cat /proc/net/dev ifconfig eth0 192.168.0.111 route add -net default gw 192.168.0.254 netmask 0.0.0.0 /etc/resolv.conf:nameserver 202.106.196.115,19,网络数据抓包软件的使用,20,NFS文件系统的使用,NFS(Network File System,网络文件系统)是由SUN公司发展,并於1984年推出的网络文件共享的标准 方便嵌入式Linux上,根文件系统、应用程序的更新和调试,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > PPT模板库 > PPT素材/模板

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号