自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

转载 MPTCP 理解

背景     随着技术的发展许多设备具有了多个网络接口,而TCP依然是一个单线路的协议,在TCP的通信过程中发端和收端都不能随意变换地址。我们可以利用多个网络接口的这一特性来改善性能和有效冗余。例如:你的手机同时连接WIFI信号和3G信号的时候,如果WIFI关掉,使用WIFI进行的TCP连接就会断开,而不能有效利用3G网络继续收发数据。而Multipath TCP可以在一条TCP链

2017-02-28 15:42:10 5998

转载 AsyncChannel的使用和原理

本文主要介绍AsyncChannel的使用和内部原理。一、AsyncChannel概述                AsyncChannel在Wifi的处理机制中被大量使用,但是可惜的是该工具是一个internal的方法,没有开放给第三方应用使用,但是该工具提供的思路很有用,可以被扩展到任意两个Handle间传输数据的通道。        那么AsyncChannel究竟

2017-02-28 10:35:12 285

转载 数据业务建立流程之APN参数的激活

APN参数在前面《数据业务建立流程之常规APN参数的创建》一文中已经都被创建完毕并存入mAllApnSettings的数组中,但是这些APN参数默认都是没有被Enable的,只有当APN被Enable之后,该APN才可以被使用,下面我们就来看如何将一个APN参数激活。        APN的Enable是通过TelephonyNetworkFactory中的needNetworkFor()方法

2017-02-28 10:08:07 607

转载 Framework中的连接管理机制

上一节《Wifi服务框架介绍》介绍了WIFI的大致框架,本文主要介绍连接管理中的几个重要角色,包括:NetworkInfo、NetworkAgent、ConnectivityService、ConnectivityManager等。        为了便于讨论,本文选取一个具体问题展开分析,那就是:当当前的网络连接变为不可用时,系统如何自动切换其他可用的网络连接的。        我们知道

2017-02-27 17:41:43 364

转载 网络连接评分机制之再谈WIFI与数据切换过程

前面几节介绍了网络评分机制的运行流程,下面我们再次通过案例来梳理一下评分机制在使用过程中的体现。        用户原本在用数据上网,但是如果到了一个有WIFI的环境,并连接上了WIFI,此时用户的手机将会自动断开数据网络,这是如何做到的呢?        当用户来到WIFI环境时,如果连上了某个WIFI,那么此时的WIFI状态机将会进入L2ConnectedState状态,然后会更新当前

2017-02-27 17:23:56 731

转载 网络连接评分机制之NetworkMonitor

本节介绍一个比较特殊的流程,就是网络可用性对评分的影响。        该影响主要体现在,当一个网络连接建立时,系统将用该连接Ping一个Google的网站来判断该连接是否真的可以上网,如果不可以,那么就会扣掉该网络40分,从而可能导致该网络的评分低于其他网络评分,下面来看详细过程。一、NetworkMonitor来源        在前面《网络连接评分机制之Netwo

2017-02-27 17:22:35 823

转载 网络连接评分机制之NetworkAgent

前面介绍了开机过程中各个网络提供者的初始化过程,其实就是创建自己的NetworkFactory,并将其注册到ConnectivityService。而在介绍NetworkFactory的时候,我们看到该类的官方注释中有这么一句描述:[java] view plain copyprint?"A NetworkFactory is an entity tha

2017-02-27 17:01:03 857

转载 网络连接评分机制之NetworkFactory

在开机时,各个提供网络连接的对象需要向ConnectivityService注册自己,并把自己所提供的网络的分值告诉ConnectivityService。        为了ConnectivityService便于统一管理,每一个具备提供网络服务的对象都需要创建一个NetworkFactory的子类对象,并利用该对象注册自己,以及提供自己的分值。一、NetworkFactory

2017-02-27 16:59:11 424

转载 连接管理的评分机制介绍

在前一节《Framework中的连接管理机制》中简单介绍了连接管理的大致框架,包括ConnectivityManager、ConnectivityService、NetworkAgent等对象之间的关系以及消息流走向,本节在这些知识的基础上介绍连接管理的核心机制,即连接管理中的评分机制。        Android可以提供数据业务的对象主要有:移动数据网络、WIFI、蓝牙、网线等,这些连接本

2017-02-27 16:56:04 357

转载 数据业务建立流程之发起网络连接过程

经过前面这些过程,网络连接所需要的条件就全部准备就绪,接下来就是等待网络接入。        我们把网络接入过程简单分为三个阶段:        触发阶段            ----该阶段是由各种不同事件触发的,比如SIM载入完毕、PS域Attach成功、通话结束、APN改变等,该阶段的最终都是要调用setupDataOnConnectableApns()方法;       

2017-02-27 16:16:19 1294

转载 Ubuntu12.10编译MPTCP

准备工作1、操作系统:Ubuntu-12.10-desktop-i386(32位)或者Ubuntu-14.04-desktop-amd64 (64位)2、Mptcp源码:从官网下载 http://multipath-tcp.org/snapshots/我下载的是mptcp_2015_11_17.tar.gz安装系统编译mptcp源码1、安装操作系统,并安装好网卡驱动。网

2017-02-24 14:56:20 1142

转载 如何从wireshark中的RTSP流媒体提取H.264码流数据

相信很多做流媒体开发的朋友都在纠结如何抓取RTSP中的实际码流吧,因为从RTSP中提取h264文件不但可以让你详细分析码流,更让你能不通过任何其他方式分析网络流媒体的丢包、丢帧、卡顿、花屏等一些现实视频传输中经常遇到的问题。      网络抓包工具神器wireshark一定是大部分同仁都钟意的一款很好用的网络抓包工具吧,下面就教你怎么使用wireshark从rtsp中提取h264码流吧,这能助

2017-02-24 14:37:12 3420

转载 TCP拥塞控制,慢启动算法

当一个网络面对的负载超过了它的处理能力时,拥塞就会发生。Internet也不例外。理论上,通过使用一条从物理学中套用过来的法则:分组守恒法则,拥塞现象就可以得到控制。它的基本思想是,只有当一个老的分组离开之后才允许向网络注入一个新的分组。TCP企图通过动态的维护窗口的大小来实现这个目标。管理拥塞的第一步是检测用色。在过去,检测拥塞是非常困难的。由于丢失分组而引起的超时可能有两种情况:(1)

2017-02-24 11:33:55 5712

转载 TCP/IP数据包格式详解-包括数据链路层的头部

最近在进行一些路由软件的编程,发现自己对数据报格式并不是十分清楚,所以就查阅了相关资料,总结如下,供大家参考,也可以称为自己日后的工具。图中括号中的数字代表的是当前域所占的空间大小,单位是bit位。黄色的是数据链路层的头部,一共14字节绿色的部分是IP头部,一般是20字节紫色部分是TCP头部,一般是20字节最内部的是数据包内容黄色部分:链路层目的MAC:

2017-02-24 11:23:13 1870

转载 mptcp包结构

MPTCP包结构TCP/IP数据包MPTCP是常规TCP协议的扩展,想要了解MPTCP数据包,首先得了解常规的TCP包。如上图所示,为TCP/IP的数据包格式,TCP/IP数据包分为四大块:黄色的数据链路层头部,蓝色的IP头部,紫色TCP头部,还有最后的数据报内容。详细内容参考http://blog.csdn.net/alexander_xfl/article/details/

2017-02-24 10:00:30 703

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除