课程设计要求-Linux下基于socket的文件传输程序设计

上传人:平*** 文档编号:17078151 上传时间:2017-11-10 格式:DOC 页数:10 大小:63.99KB
返回 下载 相关 举报
课程设计要求-Linux下基于socket的文件传输程序设计_第1页
第1页 / 共10页
课程设计要求-Linux下基于socket的文件传输程序设计_第2页
第2页 / 共10页
课程设计要求-Linux下基于socket的文件传输程序设计_第3页
第3页 / 共10页
课程设计要求-Linux下基于socket的文件传输程序设计_第4页
第4页 / 共10页
课程设计要求-Linux下基于socket的文件传输程序设计_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《课程设计要求-Linux下基于socket的文件传输程序设计》由会员分享,可在线阅读,更多相关《课程设计要求-Linux下基于socket的文件传输程序设计(10页珍藏版)》请在金锄头文库上搜索。

1、河北联合大学课程设计报告1Linux 高级开发课程设计报告课程设计题目:Linux 下基于 socket 的文件传输程序设计 学 院:_专业班级:_年 级: _姓 名:_学 号:_完成时间:_年_ 月_日成 绩:_指导教师:_河北联合大学课程设计报告2课程设计指导教师评定成绩表优秀(100x90)良好(90x80)中等(80x70)及格(70x60)不及格(x头 文 件 中 , 形 式 如下 :struct sockaddruint8_t sa_len;sa_family_t sa_family;char sa_data14;IPv4 套 接 口 地 址 数 据 结 构 以 socketadd

2、r_in 命 名 , 定 义 在头 文 件 中 , 形 式 如 下 :struct socketaddr_in河北联合大学课程设计报告7unit8_t sin_len;sa_family_t sin_family;in_port_t sin_port;struct in_addr sin_addr;unsigned char sin_zero8;下 图 是 TCP 套 接 口 通 信 工 作 流 程 图 :结束连接通知应答信号服务请求三次握手过程 挂起,直到有客户机的连接请求Socket()客户机进程 服务器进程Bind()Listen()Accept()Recv()Send()Connect

3、()Send()Recv()Close()Socket()Recv()TCP 套接口通信工作过程通 信 工 作 的 大 致 流 程 :服 务 器 先 用 socket()函 数 来 建 立 一 个 套 接 口 , 用 这 个 套 接 口 完 成 通 信 的监 听 及 数 据 的 收 发 。服 务 器 用 bind()函 数 来 绑 定 一 个 端 口 号 和 ip 地 址 , 是 套 接 口 与 指 定 的端 口 号 和 ip 关 联 。服 务 器 调 用 linsten()函 数 , 是 服 务 器 的 端 口 和 Ip 处 于 监 听 状 态 , 等待 网 络 中 某 一 个 客 户 机

4、的 连 接 请 求 。客 户 机 用 socket()函 数 建 立 一 个 套 接 口 , 设 定 远 程 ip 和 端 口客 户 机 调 用 connect()函 数 连 接 远 程 计 算 机 指 定 的 端 口 。河北联合大学课程设计报告8服 务 器 调 用 accept()函 数 来 接 受 远 程 计 算 机 的 连 接 请 求 , 建 立 起 与 客 户机 之 间 的 通 信 连 接 。建 立 连 接 之 后 , 客 户 机 用 write()函 数 ( 或 send()) 想 socket 中 写 入数 据 。 也 可 以 用 read()函 数 ( 或 recv()函 数 )

5、 赌 气 服 务 器 发 送 来 的 数 据 。服 务 器 用 read()函 数 ( 或 recv()函 数 ) 来 读 取 客 户 机 发 来 的 数 据 , 也可 以 用 write()函 数 ( 或 send()函 数 ) 来 发 送 数 据 。完 成 通 信 以 后 , 使 用 close()函 数 关 闭 socket 连 接 。河北联合大学课程设计报告93 详细设计过程3.1 服务器端创建监听与文件管理3.2 客户端连接与文件传输4 结果演示5 实现代码5.1 服务器代码 5.2 客户端代码河北联合大学课程设计报告106 总结体会为 期 一 周 的 Linux 课 程 设 计 结

6、 束 了 , 从 中 获 益 匪 浅 。一 方 面 是 检 查 了 这 一 个 学 期 来 linux 内 核 编 程 学 习 成 果 , 将 书 本 的 理 论知 识 运 用 到 实 践 中 , 另 一 方 面 在 实 践 中 加 深 了 对 理 论 知 识 的 理 解 , 与 此 同 时够 让 我 们 认 清 自 己 在 学 习 Socket 编 程 方 面 的 不 足 之 处 和 薄 弱 环 节 , 并 加 以弥 补 和 巩 固 , 通 过 对 线 程 同 步 程 序 设 计 , 进 一 步 的 巩 固 用 Socket 编 程 的 能力 , 并 且 也 有 利 于 更 好 的 掌 握

7、C 语 言 。例 如 在 改 写 成 tcp 过 程 中 对 其 他 函 数 也 要 进 行 相 应 的 修 改 。 生 成 可 执 行文 件 , 无 错 误 后 开 始 运 行 , 但 是 不 能 连 接 , 总 是 出 错 误 , 然 后 继 续 改 正 , 最终 发 现 错 误 在 sock 创 建 主 动 套 接 口 转 为 被 动 时 没 有 运 用 TCP 流 式 套 接 字( SOCK_STREAM) 。 而 且 发 现 tcp 有 专 用 函 数 listen( ) , 其 仅 被 TCP 服务 器 调 用 , 将 sock 创 建 的 主 动 套 接 口 转 换 为 被 动

8、套 接 口 , TCP 使 用send( ) 函 数 发 送 数 据 。从 编 程 中 体 会 颇 多 , 学 到 了 很 多 东 西 , 懂 得 了 怎 样 建 立 TCP 套 接 字 以及 加 锁 解 锁 和 条 件 变 量 的 作 用 。 也 懂 得 了 网 络 通 信 中 服 务 器 需 要 循 环 等 待 客户 端 连 接 进 来 , 然 后 创 立 一 个 单 独 的 线 程 来 监 听 该 客 户 端 的 行 为 动 作 。 同 时加 强 了 我 对 TCP/IP Socket 编 程 这 门 课 程 的 认 识 , 并 且 也 复 习 了 以 前 学 习 到的 知 识 , 自

9、己 的 逻 辑 思 维 能 力 也 得 到 了 一 定 的 提 高 。通 过 这 次 课 程 设 计 , 懂 得 了 理 论 与 实 际 相 结 合 是 很 重 要 的 , 只 有 理 论 是远 远 不 够 的 , 只 有 把 所 学 的 理 论 知 识 与 实 践 相 结 合 起 来 , 从 理 论 知 识 与 实 践相 结 合 , 从 理 论 中 得 出 结 论 , 才 是 真 正 的 知 识 , 才 能 提 高 自 己 的 事 迹 动 手 能力 和 独 立 思 考 的 能 力 。河北联合大学课程设计报告11参考文献1 (美)Rober Love Linux Kernel Development(Third Edition) 机械工业出版社 2011 年 6 月2 杨进才,沈显军,刘蓉C+语言程序.清华大学出版社,2006,93 龚沛曾,杨志强C/C+程序设计教程.北京:高等教育出版社,20054 陈华生VC+程序设计基础.江苏:苏州大学出版社,2000.95 Oh JH,Moon S J,Modular multiplication methodJ ,IEE Proceedings:Computers and Digital Techniques,1998,145(4):317318

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 中学教育 > 试题/考题

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号