协议基于套接字局域网内文件传输软件

局域网文件传输  时间:2021-01-12  阅读:()

基于套接字的局域网内文件传输软件

摘要

当今世界科学技术飞速发展尤其以计算机通信网络为代表的互联网技术更是日新月异令人眼花燎乱 目不睱接。在计算机与网络迅速发展的今天借助于网络进行信息资源交流给人们带来了极大的方便。各种文件传输系统都已被广大用户接受。比如、、邮件等互联网中运用最为广泛的文件传输工具但它们之间的文件传输往往对远程服务器有非常大的依赖性没有彻底实现点对点安全的文件传输。甚至需要花费大量的金钱购买各种移动磁盘或者其他局域网内连接主机的硬件设备。而达到的效果却总是因为传输效率以及安全威胁而受到很大的限制。在这种形势下开发一个功能简单而实用并且具有可移植性的局域网内文件传输工具势在必行信息之间交换技术使用也越来越广泛比如资料的共享信息之间的交互以及文件之间的传输。本论文设计了一个基于环境在局域网里实现文件传输的软件环境是如今很公司做软件开始所选着的环境该软件实现了文件在局域网里的传输方便了在局域网里内部进行交流实现信息的同步进一步提高工作的效率。

关键词文件传输套接字网络编程系统

(Col lege ,JishouUniversity,Jishou,Hunan 416000)

, .a a . , . ,, , , , ., , , , ,

 ; ; ;

目录第一章绪论•1

1 .1文件传输的应用背景与概述•1

1 .2开发环境介绍…………1

.

第二章基本原理

2.1文件传输的原理. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .2

2.2文件传输软件的功能实现. . . . . . . . . . . . . . . . . . . . . .2

2.2.1函数介绍。。。。。。。 2

2.2.2编程基础重要的数据结构…………6

2.2.3提供的系统调用或函数的详细讲解…………6

2.2.4使用到的主要函数介绍()………6

2.3软件源代码…………7

2.3.1发送端源代码………8

2.3.2接收端源代码………9

第三章文件传输软件的使用. . . . . . . . . . . .10

3  1 接收端的使用………

3.2 发送端的使用。。。

3.3 测试结果。。。

第四章设计总结

.

.

.

参考文献•25

第一章绪论

1 .1文件传输的应用背景与概述

在日常的网络应用中文件传输已经成为继即时通讯之后第二大的网络基础应用而局域网里的文件发送是最方便的文件传输手段。越来越多的网民或是商业用户都采用这种方式发送文件目前许多即时通讯软件例如都局域网文件传输功能。现在在很多公司的开发环境面使用的都是基于内核的操作系统很多服务器也是使用的的系统该软件同样也能在环境下使用本论文设计了一个基于环境在局域网里实现文件传输的软件环境是如今很公司做软件开始所选着的环境该软件实现了文件在局域网里的传输方便了在局域网里内部进行交流实现信息的同步进一步提高工作的效率。

1 .2开发环境介绍

这次软件的开发环境是红帽5 红帽5是一款基于内核的操作系统是一种自由和开放源码的类操作系统。是一套免费使用和自由传播的类操作系统是一个基于和的多用户、多任务、支持多线程和多的操作系统。它能运行主要的工具软件、应用程序和网络协议。它支持32位和64位硬件。继承了以网络为核心的设计思想是一个性能稳定的多用户网络操作系统。它主要用于基于x86系列的计算机上。这个系统是由全世界各地的成千上万的程序员设计和实现的。其目的是建立不受任何商品化软件的版权制约的、全世界都能自由使用的兼容产品。

第二章基本原理

2.1文件传输的基本原理

本软件使用的是协议  中译名为传输控制协议/因特网互联协议又名网络通讯协议是最基本的协议、 国际互联网络的基础由网络层的协议和传输层的协议组成。 定义了电子设备如何连入因特网以及数据如何在它们之间传输的标准。协议采用了4层的层级结构每一层都呼叫它的下一层所提供的网络来完成自己的需求。通俗而言负责发现传输的问题一有问题就发出信号要求重新传输直到所有数据安全正确地传输到目的地。而是给因特网的每一台电脑规定一个地址。系统的文件传输功能主要依赖于建立客户端与服务器之间点对点的的连接后实现。所以就得与协议协合。协议( )叫做传输控制/网际协议又叫网络通讯协议这个协议是国际互联网络的基础。是网络中使用的基本通信协议。虽然从名字上看包括两个协议传输控制协议()和网际协议() 但实际上是一组协议只是协议处于运输层它能够确保文件准确的传

送而协议处于网络层它标识了处于网络中任意主机的唯一身份。协议和协议是保证数据完整传输的两个基本的重要协议。通常说是协议族而不单单是和采用详解的原因

第一局域网内主机之间的是依靠地址进行标识。本设计要实现文件及文件夹的传输就需要以地址为传送基础进行

第二新用户上线后需要向局域网内所有用户广播自己的主机信息使网内主机得到本机的地址等。需要用到与相对的协议。

2.2文件传输软件功能的实现

该软件是基于套接字实现局域网的内部两台机器之间的通信利用函数建立连接通过提供的系统调用完成文件传输功能。具体分析如下假设由A向B传输文件A机器要做的准备工作有A首先得准备好传输给B的我文件然后利用与B建立通信然后用函数读取的内容将的内容写到一个中然后把利用函数通过将内容传送到B机器。B机器的准备工作有建立一个监听来自A的请求同时建立一个用来存储来自A机器的信息然后利用函数把来自A机器的内容存储在一个文件中完成上述操作就完成了由A到B的文件传输。

发送端/接收端模式

() 获得一个文件描述符

  将指定绑定到某端口

  连接到远程某个端口

() 侦听等待远程连接

() 接受了一个远程连接

()()发送或接收数据()

()()发送或接收数据()

() 关闭描述符

() 将地址字符串转换成网络字节序的4字节地址

2.2.1函数介绍

创建一个套接口一个地址描述。 目前仅支持格式也就是说地址格式。 新套接口的类型描述。 套接口所用的协议。

()函数用于根据指定的地址族、数据类型和协议来分配一个套接口的描述字及其所用的资源。如果协议未指定等于0 则使用缺省的连接方式。

对于使用一给定地址族的某一特定套接口只支持一种协议。但地址族可设为未指定 这样的话协议参数就要指定了。协议号特定于进行通讯的“通讯域”。支持下述类型描述 类型解释 提供有序的、可靠的、双向的和基于连接的字节流使用带外数据传送机制为地址族使用。支持无连接的、不可靠的和使用固定大小通常很小缓冲区的数据报服务为地址族使用。 类型的套接口为全双向的字节流。对于流类套接口在接收或发送数据前必需处于已连接状态。用()调用建立与另一套接口的连接连接成功后即可用()和()传送数据。当会话结束后调用()。带外数据根据规定用()和()来接收。 实现类型套接口的通讯协议保证数据不会丢失也不会重复。如果终端协议有缓冲区空间且数据不能在一定时间成功发送则认为连接中断其后续的调用也将以错误返回。类型套接口允许使用()和()从任意端口发送或接收数据报。如果这样一个套接口用()与一个指定端口连接则可用()和()与该端口进行数据报的发送与接收。

2.2.2 编程基础重要的数据结构

结构的地址信息

{

; ,

[14]; 14

}总长度16字节

结构存放地址信息

{

;

;

;

[8];

};

{

32; 'sa32 (4)

};

2.2.3 提供的系统调用函数的介绍 

相关函数   

表头文件 <>  <>

定义函数 ( );

函数说明 ()用来建立一个套接字文件描述符也就是向系统注册通知系统建立一通信端口。参数指定使用何种的地址类型完整的定义在内底下是常见的协议:

进程通信协议

4网络协议

666网络协议

协议

核心用户接口装置

2525 X.258208协议

2525业余无线.25协议

存取原始

 协议

初级封包接口

参数有下列几种数值:

提供双向连续且可信赖的数据流即。支持机制在所有数据传送前必须使用()来建立连线状态。

使用不连续不可信赖的数据包连接

提供连续可信赖的数据包连接

提供原始网络协议存取

提供可信赖的数据包连接

提供和网络驱动程序直接通信。

用来指定所使用的传输协议编号通常此参考不用管它设为0即可。

返回值 成功则返回处理代码失败返回-1 。

2.3.4使用到的主要函数介绍

对定位

相关函数   

表头文件 <>  <>

定义函数 ( * );

函数说明 ()用来设置给参数的一个名称。此名称由参数指向一结构对于不同的定义了一个通用的数据结构

{

;

[14];

};

为调用 时的参数即值。

最多使用14个字符长度。

此结构会因使用不同的而有不同结构定义例如使用 其结构定义便为

{

;

16;

;

[8];

};

{

32;

};

即为

为使用的编号

为地址

未使用。

参数 为的结构长度。

返回值 成功则返回0 失败返回-1 错误原因存于中。

错误代码 参数非合法处理代码。

权限不足

参数为一文件描述词非。

范例 参考()

等待连接

2022年腾讯云新春采购季代金券提前领 领取满减优惠券和域名优惠

2022年春节假期陆续结束,根据惯例在春节之后各大云服务商会继续开始一年的促销活动。今年二月中旬会开启新春采购季的活动,我们已经看到腾讯云商家在春节期间已经有预告活动。当时已经看到有抢先优惠促销活动,目前我们企业和个人可以领取腾讯云代金券满减活动,以及企业用户可以领取域名优惠低至.COM域名1元。 直达链接 - 腾讯云新春采购活动抢先看活动时间:2022年1月20日至2022年2月15日我们可以在...

小白云 (80元/月),四川德阳 4核2G,山东枣庄 4核2G,美国VPS20元/月起三网CN2

小白云是一家国人自营的企业IDC,主营国内外VPS,致力于让每一个用户都能轻松、快速、经济地享受高端的服务,成立于2019年,拥有国内大带宽高防御的特点,专注于DDoS/CC等攻击的防护;海外线路精选纯CN2线路,以确保用户体验的首选线路,商家线上多名客服一对一解决处理用户的问题,提供7*24无人全自动化服务。商家承诺绝不超开,以用户体验为中心为用提供服务,一直坚持主打以产品质量用户体验性以及高效...

Hostinger 限时外贸美国主机活动 低至月12元且赠送1个COM域名

Hostinger 商家我们可能一些新用户不是太熟悉,因为我们很多新人用户都可能较多的直接从云服务器、独立服务器起步的。而Hostinger商家已经有将近十年的历史的商家,曾经主做低价虚拟主机,也是比较有知名度的,那时候也有接触过,不过一直没有过多的使用。这不这么多年过去,Hostinger商家一直比较稳妥的在运营,最近看到这个商家在改版UI后且产品上也在活动策划比较多。目前Hostinger在进...

局域网文件传输为你推荐
linux主机【windows主机换Linux主机该怎么弄啊?需要注意些什么呢?】免费网站空间申请申请免费空间的网站100m虚拟主机万网和新网虚拟主机有100M的吗上海虚拟主机我想购买虚拟主机,选个品牌。大家给点意见。电信为主。当然肯定要支持多线。云南虚拟主机云南虚拟主机,公司网站用本地客户,云南数据港怎么样?m3型虚拟主机万网M3机型虚拟主机,如何重启?www二级域名请问 www.aaa.bbb.com 是一级域名还是二级域名啊?能否备案?怎么备案?顶级域名顶级域名 一级域名 二级域名 三级域名什么区别?万网域名万网的域名好不好?万网域名的优缺点.域名升级访问请问下老师:我新买的域名,要多长时间才能访问呀?
美国和欧洲vps ipage ddos l5520 账号泄露 建立邮箱 空间论坛 国外免费全能空间 web服务器的架设 刀片服务器的优势 中国电信宽带测速网 linux使用教程 中国电信宽带测速器 免费mysql数据库 西安服务器托管 linode支付宝 上海联通 腾讯云平台 apachetomcat 带宽测速 更多