
net
文章平均质量分 78
shuai_wen
这个作者很懒,什么都没留下…
展开
-
socket fs(1)
/*******************************************************/sock_init函数的主要功能是赋值全局变量sock_mnt:static struct vfsmount *sock_mnt __read_mostly;core_initcall(sock_init); /* early initcall */stati原创 2013-11-02 13:58:26 · 1072 阅读 · 0 评论 -
Android网络相关---上网流程
网络应用,对于用户来说,主要是搜索,浏览网页,发email,发mms。对于android来说这些应用涉及到的一些中间过程,主要涉及到webkit,wap,smtp等协议,然后是socket通信,然后就是linux内核的tcpip协议栈,及ppp协议,最后再是ttyS0之类的设备接口,最后由modem发送数据。另外手机的网络接口可能不是modem,有可能是网卡或者wifi,那么android中也有相转载 2013-11-14 18:06:28 · 1186 阅读 · 0 评论 -
Linux 网络栈剖析
Linux 网络栈剖析从 socket 到设备驱动程序Linux® 操作系统的最大特性之一就是它的网络栈。它最初源于 BSD 的网络栈,具有一套非常干净的接口,组织得非常好。其接口范围从协议无关层(例如通用 socket 层接口或设备层)到各种网络协议的具体层。本文将从分层角度对 Linux 网络栈的接口进行探索,并介绍其中的一些主要结构协议简介虽然对于网络的正式介绍一转载 2013-11-29 11:08:40 · 865 阅读 · 0 评论 -
PPP协议体系的实现
其实PPP不像是一种协议,而更像是一种应用,可以把它看成一个拨号上网的应用软件,拨号成功后,本地主机就可以正常上网了,可以使用TCP/IP等协议,而完全感觉不到PPP的存在。而实际上PPP在网络协议栈中增加了不少东西,但对上层透明。另外PPP一般需要底层工具来支持,如之前讲的PPPoE。Pppoe协议的实现在协议栈中,且其底层有实际的物理设备(或者vlan设备)支持,关键就在于pppo转载 2013-12-02 10:17:33 · 1086 阅读 · 0 评论 -
linux网络报文接收发送浅析
对于linux内核来说,网络报文由网络设备来进行接收。设备驱动程序从网络设备中读取报文,通过内核提供的网络接口函数,将报文传递到内核中的网络协议栈。报文经过协议栈的处理,或转发、或丢弃、或被传送给某个进程。网络报文的发送与之相反,进程通过系统调用将数据送入网络协议栈,或者由网络协议栈自己发起报文的发送,然后协议栈通过调用网络接口函数来调度驱动程序,使其将报文传送给网络设备,从而发送出去。本转载 2013-12-03 09:59:20 · 1077 阅读 · 0 评论 -
Linux网络设备结构
Linux网络设备结构 首先看一下Linux网络设备的结构,如下图: 网络协议接口层向网络层协议提供提供统一的数据包收发接口,不论上层协议为ARP还是IP,都通过dev_queue_xmit()函数发送数据,并通过netif_rx()函数接受数据。这一层的存在使得上层协议独立于具体的设备。网络设备接口层向协议接口层提供统一的用于描述具体网络设备属性和操作的结构体ne转载 2013-12-03 10:01:32 · 1487 阅读 · 0 评论 -
socket Rx
tasklet_init(&ap->tsk, ppp_async_process, (unsigned long) ap);ppp_async_process -> ppp_input -> ppp_do_recv -> ppp_receive_frame->ppp_receive_nonmp_frame ->netif_rx ->enqueue_to_backlog ->____napi原创 2013-12-05 15:06:37 · 1005 阅读 · 0 评论 -
socket Tx
/************************************************************************************/[ 92.021903:0] Backtrace: [ 92.024617:0] [] (dev_queue_xmit+0x0/0x20) from [] (neigh_direct_output+0x14/0x原创 2013-12-05 15:05:49 · 1106 阅读 · 0 评论 -
Android 2.1下调试3G模块
曾几何时在Android2.1下调试3G模块,曾几何时模块厂商提供的库不能用,曾几何时只能用自己的库痛苦地调试...这一切的一切都已成往事,昔日的成功在毫无保留下成为浮云,该忘了忘记了,该记得也跟着忘记了。现如今再次调3G模块,却不知道以前如何调试,看来还是要记下来。我采用的是华为EM770W模块,支持WCDMA网络,由于华为提供的库只支持Android2.2,所以用Android2.1就需要转载 2014-02-07 16:08:20 · 933 阅读 · 0 评论 -
tty上网行规的设置
/************************************************************************/目的AP/BP通过shared memory上网, shared memory虚拟成多个tty端口,通过其中一个tty端口上网,上网端口的行规设置为 N_PPP,在kernel一直没有找到哪里设置了这个行规。在哪里设置的哪?从系原创 2014-02-08 14:17:02 · 1968 阅读 · 0 评论 -
本地socket unix domain socket
socket API原本是为网络通讯设计的,但后来在socket的框架上发展出一种IPC机制,就是UNIXDomain Socket。虽然网络socket也可用于同一台主机的进程间通讯(通过loopback地址127.0.0.1),但是UNIX Domain Socket用于IPC更有效率:不需要经过网络协议栈,不需要打包拆包、计算校验和、维护序号和应答等,只是将应用层数据从一个进程拷贝到另一个进转载 2015-12-26 23:08:15 · 661 阅读 · 1 评论 -
Linux Netlink通信机制详解
前面有一篇文章其实已经介绍过Netlink方面的知识,还有一个内核和用户空间之间的一个交互例子,这篇文章主要是更细节和基础的知识介绍!Netlink 是一种特殊的 socket,它是 Linux 所特有的,由于传送的消息是暂存在socket接收缓存中,并不被接收者立即处理,所以netlink是一种异步通信机制。 系统调用和ioctl 则是同步通信机制。用户空间进程可以通过标准soc转载 2015-12-26 23:26:29 · 798 阅读 · 0 评论 -
PPP
/******************************************************************/module_init(ppp_async_init);static int __initppp_async_init(void){ tty_register_ldisc(N_PPP, &ppp_ldisc);}stati原创 2013-11-27 16:55:44 · 1241 阅读 · 0 评论 -
3G模块PPPD拨号流程分析
http://doc.baidu.com/view/a16227f3770bf78a6529544b.html转载 2013-11-27 16:11:09 · 1194 阅读 · 0 评论 -
PPP Generic Driver and Channel Interface
PPP Generic Driver and Channel Interface ---------------------------------------- Paul Mackerras paulus@samba.org 7 Feb 2002The generic PPP driver in linux-2.4 provides an转载 2013-11-27 16:13:26 · 1465 阅读 · 0 评论 -
socket 的通信过程
12.3.4socket的通信过程 请先看图12.9所示的socket 通信过程 图12.9 socket 的通信过程1.建立套接字Linux在利用socket()系统调用建立新的套接字时,需要传递套接字的地址族标识符、套接字类型以及协议,其函数定义于net/socket.c中: asmlinkagelong sys_socket(转载 2013-11-02 14:19:06 · 887 阅读 · 0 评论 -
Linux 文件系统剖析
按照分层结构讨论 Linux 文件系统在文件系统方面,Linux® 可以算得上操作系统中的 “瑞士军刀”。Linux 支持许多种文件系统,从日志型文件系统到集群文件系统和加密文件系统。对于使用标准的和比较奇特的文件系统以及开发文件系统来说,Linux 是极好的平台。本文讨论 Linux 内核中的虚拟文件系统(VFS,有时候称为虚拟文件系统交换器),然后介绍将文件系统连接在一起的主要结构转载 2013-11-04 11:15:45 · 638 阅读 · 0 评论 -
Demystifying the Linux Kernel Socket File Systems (Sockfs)
All Linux networking works with System Calls creating network sockets (using theSocket System Call). The Socket System Call returns an integer (socket descriptor).“Writing” or “reading” to/from t转载 2013-11-06 13:51:20 · 1098 阅读 · 0 评论 -
文件系统(1)
文件系统初始化/********************************************************************/init/main.cstart_kernel: vfs_caches_init_early(); vfs_caches_init(totalram_pages);void __init vfs_c原创 2013-11-06 14:08:55 · 939 阅读 · 0 评论 -
socket fs(3)
http://isomerica.net/~dpn/socket_vfs.pdf转载 2013-11-06 11:07:47 · 820 阅读 · 0 评论 -
syscall open
/*******************************************************************************/SYSCALL_DEFINE3(open, const char __user *, filename, int, flags, umode_t, mode){ long ret; if (force_o_原创 2013-11-06 16:26:48 · 2610 阅读 · 0 评论 -
socket fs(2)
/************************************************************************************/socketfs的创建sock_init -> { register_filesystem(&sock_fs_type); sock_mnt = kern_mount(&sock_fs_type)原创 2013-11-06 11:06:49 · 1068 阅读 · 1 评论 -
Android RIL的java框架
Android RIL的Java部分也被分为了两个模块,RIL模块与Phone模块。其中RIL模块负责进行请求以及相应的处理,它将直接与RIL的原声代码进行通信。而Phone模块则向应用程序开发者提供了一系列的电话功能接口。1.RIL模块结构 在RIL.java中实现了几个类来进行与下层rild的通信。 它实现了如下几个类来完成操作: RILRequest:代表一个命令转载 2013-11-11 13:21:52 · 962 阅读 · 0 评论 -
Radio Interface Layer
Radio Interface LayerFrom Wikipedia, the free encyclopediaJump to: navigation, searchA Radio Interface Layer (RIL) is a layer in an operating system which provides an interface to the hardwa转载 2013-11-11 13:24:24 · 1155 阅读 · 0 评论 -
Android RIL结构分析与移植
介绍本文档对Android RIL部分的内容进行了介绍,其重点放在了Android RIL的原生代码部分。包括四个主题: 1.Android RIL框架介绍2.Android RIL与 WindowsMobile RIL3.Android RIL porting4.Android RIL的java框架 在本文档中将Android代码中的重要模块列出进行分析,并给出了转载 2013-11-11 13:17:29 · 1043 阅读 · 0 评论 -
Android RIL总体架构介绍
Android RIL总体架构介绍本文为御风独舞原创,转载请注明出处:hi.baidu.com/roooy,谢谢:)当我们开始编写Android的电话应用程序的时候,如果需要进行电话拨号,可以进行如下调用:ITelephony tpCallModule = (ITelephony)ITelephony.Stub.asInterface(ServiceManager.getServi转载 2013-11-11 13:20:16 · 1394 阅读 · 0 评论 -
UNIX SOCKET编程简介
1 . Layered Model of NetworkingSocket 编程的层次模型如下图所示, 最上面是应用层,应用层下面的是 SOCKET API 层,再下面是传输层和网络层…… 实际上, Sockets API 层并不是一个真正定义的网络层次,但却很好的描述了 Socket 编程所处的位置和所扮演的角色。TCP 状态转换图 2 .什么转载 2016-03-06 16:57:52 · 509 阅读 · 0 评论