前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >计算机网络之应用层-FTP、P2P、Socket编程

计算机网络之应用层-FTP、P2P、Socket编程

作者头像
越陌度阡
发布2020-11-26 11:22:38
7630
发布2020-11-26 11:22:38
举报

1. FTP

FTP 即 文件传送协议( File Transfer Protocol ),用于在互联网的两个主机间实现文件互传的网络应用的应用层协议。

FTP的服务器进程由两大部分组成:

1. 主进程, 负责接受新的客户请求;

2. 从属进程, 负责处理单个客户请求, 与具体客户进行交互。

FTP客户与服务器之间的连接分为两种:

1. 控制连接,专门用于用户登录、服务器授权,为持久连接;

2. 数据连接,专门用于文件传输,为临时连接。

FTP专门使用一个独立的控制连接传输控制信息, 与传输文件信息进行分离, 所以将FTP这种控制信息的传送方式称为带外控制。

FTP是有状态的协议, FTP的命令都是可读的,例如:USER、PASS、LIST。

2. P2P

P2P 即 Peer to peer,近年来很多性能表现优异, 深受用户喜爱的P2P应用层出不穷。例如:BitTorrent、 PPLive和PPstream等。

P2P应用特点:

1. 应用的对等方是用户的计算机;

2. 很强的应用规模伸缩性;

3. 应用在对等方之间进行;

4. 应用充分聚集利用了端系统的计算能力以及网络传输宽带。

3. Socket编程基础

套接字(Socket) : 典型的网络应用编程接口。

端口号: 标识套接字。

常见端口号:

常用Socket API 函数:

1. 创建套接字:socket( )

2. 绑定套接字的本地端点地址: bind( )

3. 设置监听: listen( )

4. 建立连接:

(1). TCP客户端: connect( )

(2). TCP服务端: accept( )

5. 接收数据:

(1). TCP客户端:recv( )

(2). TCP服务端:recvfrom( )

6. 发送数据:

(1). TCP客户端:send( )

(2). TCP服务端:sendto( )

7.关闭套接字: close( )

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/11/09 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 1. FTP
  • 2. P2P
  • 3. Socket编程基础
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档