PPP 和PDP 激活是什么区别! ppp 相当于链路层协议 socket 套接字,对tcp/ip 协议的封装、应用 gprs 上网首先要设置 pdp,接着建立 ppp 连接,ppp 连接建立后,就可以进行 tcp/ip 传输了, 要进行 tcp/ip 数据传输,很多时候都采用 socket PDP:是GPRS 连接的软硬件环境,指定 GPRS 连接的接入点APN,连接类型 IP 或 PPP,还有其他一些可选项; PPP:终端和MODEM 之间点对点的协议,包括终端于MODEM 之间的链路层协商(LCP),服务器对终端的认证(PAP 或 CHAP,这一步非强制),以及终端与服务器的网络层协商(基本都是IPCP); SOCKET:进程之间的通信方式,手机上的应用程序(客户进程)要和服务器的某个服务进程通信,就用 socket通过邦定的TCP 或 UDP 端口基于IP 进行数据传输 再补充一下: PPP 协商过程中的IPCP 配置中,终端通过 MODEM 请求激活PDP 上下文获得 IP 地址完成网络连接,PDP 中设置的APN 就是终端所在的这个网络的网关,终端访问 internet 时就得通过这个网关; 而终端的客户进程与服务器的服务进程进行 socket 通信时,就基于这个 IP 地址。 以 GPRS 模块做个例子,为什么使用 PPP 连接,就可以同连接多个服务器呢?而 SOCKET 连接每次只能连接一个服务器呢? 据我所知道的:从网络侧来看,PPP 连接最重要的一步是获取 IP 地址,这个 IP由 GGSN 分配,GGSN 是GPRS 网到 internet 的网关,GSM 和WCDMA 协议规定一个MODEM 可以和多个 GGSN 建立 PDP 上下文,不知道你所说的服务器是否指 GGSN。而socket 连接的服务器和GGSN 完全是两码事,socket 连接的是internet 网络中的服务器,socket 是用于进程间通信的,它将进程与 TCP/UDP 端口进行绑顶,一个 client 端的socket 只能连接一个 serv er socket。也就决定了它只能连接一台服务器。 如果你要写应用程序,你只需要关心 socket 的函数族就可以了。不需要去考虑 GPRS 如何如何。它对你是透明的。当然,写应用的时候必须注意两件事:1、GPRS 是否可用。如果当前 GPRS 根本就无法连接,你开socket 是毫无意义的;2、拥塞控制。GPRS 速度其实并不高,用惯了宽带网的小朋友很喜欢在上面一秒一千个循环每个循环 1000 字节的发送内容,网络堵死了都不知道怎么死的。从理论上来说,如果你的平台上的TCP/IP 足够完整,你根本不需要考虑 GPRS 的内容,只需要根据 TCP/I...