华北科技学院计算机学院综合性实验
- 格式:doc
- 大小:841.50 KB
- 文档页数:15
数据库教务管理组织系统综合实验报告华北科技学院计算机系综合性实验实验报告课程名称《数据库系统A》实验学期2011 ⾄2012 学年第 2 学期学⽣所在系部计算机学院年级2010 专业班级⽹络B101班学⽣姓名学号任课教师实验成绩计算机系制_ 《数据库系统A》课程综合性实验报告开课实验室:软件开发实验室(⼀)2012年6⽉6⽇也被合并为班级的外码。
存在的函数依赖为Class →(Ccredit, Tno.Dno ),其中Class →Tno,⽽Tno →Dno,即存在对候选码的传递依赖,所以只满⾜2NF。
(2)设计合适的视图在将E-R图向关系模型转换后,还应根据局部应⽤的需求,对不同级别的⽤户定义不同的视图,这样不仅可以在视图中重新定义某些属性名,使⽤户使⽤更⽅便,⽽且还可以通过视图保证系统的安全性。
在本次的教务管理系统数据库中,我针对使⽤该数据库最频繁的学⽣和教师⽤户建⽴了相关视图,其中包括对系别、教师、课程的分配视图;对学⽣学号、成绩、等相关信息的查询和教师基本信息的查询等三个视图,这样,对这些经常使⽤的查询,⽤户就可以通过视图来查询,⼤⼤简化了⽤户的使⽤。
创建的三个视图的截图如下:教师授课安排视图:学⽣成绩查询视图:教师基本信息查询视图:4.物理设计该数据库中每⼀个关系模式的主码分别为系统⾃动设置的索引,如学⽣关系模式中的学号,教师关系模式中的⼯作证号,系别中的系别号等,同时,通过对实际操作的思考,为了查询某系的⽼师的⽅便,我们还需要在Teacher表中建⽴⼀个“系代号”Dno 的索引;⼜因为查询操作很多都通过学⽣姓名查找的,所以还需要在Student表姓名列sname上建⽴⼀个索引等,这样⼤⼤简化查询操作。
5.数据库的实现(1)创建库、表在该教务管理系统中包括了学⽣表、教师表、选课表、系别表、班级表、课程表、教师与班级的联系表等多个表。
在此,我以学⽣表为例进⾏说明表的创建。
另外,在创建表的同时还要注意有时需要创建两个表之间的级联,例如,此教务管理系统中SC表是参照学⽣表的学号和课程表的课号建⽴的,所以应该在SC表中建⽴其与Student表与Course表的级联;课程表⼜是参照教师表中的教师⼯作证号建⽴的,所以应该建⽴⼀个course表与教师teacher表的级联;班级表也是参照教师表中的教师⼯作证号建⽴的,所以也应该建⽴⼀个class表与教师teacher表的级联,这样当参照表发⽣改变时能同时在⽬标表中也发⽣相应改变,保证数据库中数据的正确有效性。
华北科技学院计算机学院综合性实验实验报告课程名称JAVA程序设计实验学期2012至2013学年第1学期学生所在系部计算机学院任课教师白磊实验成绩计算机学院制《JAVA程序设计》课程综合性实验报告开课实验室:基础四2012年12月09日实验题目简单计算器设计一、实验目的通过编写Java的应用系统综合实例——简单计算器软件,总结、回顾和实践面向对象的编程思想以及编程方法,并通过编写程序来掌握Java语言编程技巧,将学习到的知识融会贯通,同时提高调试程序的能力,养成良好的编程习惯,并增强对程序设计整体思路的把握。
熟悉在集成开发环境下编写Java程序。
二、设备与环境Eclipse、JDK开发包、集成开发环境三、实验内容及代码首先设计的是程序的结构。
程序中主要是一计算器公共类(implements ActionListener),包括构造函数(用于计算器的外观设置,布局)。
在设计一个界面时先设计Frame容器,在north添加一个TextField,center添加一个Panel容器。
再在Panel容器中添加两个panel容器,第一个panel中添加“CE”(西端)、“backspace”(中间)、“C”(东端)三个按钮。
第二个panel容器中GridLaout把容器分成四行五列,添加1,2,3,4,5,6,7,8,9,0,+,-,*,/,%,+\-,1/x,sqrt,=,这些按钮。
定义各个按钮逐个添加给ActionListener监听器进行注册。
界面构造号后接着定义算法。
定义加减乘除,倒数,开方等这些基本运算包含于actionPerformed 方法(用于事件的响应),一个public static void main(String arg[])程序运行入口。
在main中创建一个计算器类对象,在创建对象的同时,初始化各组件,创建图形用户界面。
代码:import javax.swing.*;import java.awt.*;import java.awt.event.*;价。
华北科技学院计算机系综合性实验实验报告课程名称《数据库系统A》实验学期2011 至2012 学年第 2 学期学生所在系部计算机学院年级2010 专业班级网络B10—3班学生姓名安志欣学号200907024320 任课教师郭红实验成绩计算机系制《数据库系统B》课程综合性实验报告借阅执行后的读者信息状态:图书归还后的读者信息状态:创建存储过程后,对dm为1003的读者的借阅信息进行查询后的结果:四、实验结果及分析数据库创建后,对其性能进行测试。
对图书借阅表进行更改,执行语句后,触发器t2首先工作,看读者是否还具有借阅权限,当有借阅权限时对读者信息进行更改,将读者的借阅次数加1,以此来实现对读者以后借书数量的限制。
;t3工作,对图书基本信息中的数据进行修改。
当读者归还图书时,t1工作,删除图书借阅表中的图书信息,图书的库存量相应增加,t4工作,使读者的借书次数减1,使读者可以以后继续借书.用存储过程p1,实现读者对借书信息的查询。
输入语句,并对语句执行后,显示出所输入编号对应读者的借阅信息;p2用于查询每本图书的借阅情况.相对来说,这个数据库的功能还有很大的改进空间,比如安全性方面的问题,读者不能对自己的登录密码进行更改,当有人知道某个读者的编号后,就可以对读者的信息查询,这些都使这个数据库不够完美。
但,这个数据库可以使读者对自己的借书信息,归还信息,个人信息进行查询,在对图书借阅的时候,自动对读者,图书馆藏信息进行更改,在归还图书时,可以对读者和馆藏信息更改,从而减少了图书管理员的操作内容,避免了由于人员输入出错导致数据不能操作的现象.用存储过程减少了临时对语句输入所耗费的时间,提高了系统的操作效率.体会:对于这次综合实验的设计,最开始没有担心太多事情,因为时间给的很多,而且对于图书馆的一些管理内容的东西有比较多的经历,所以最开始就只是先对图书管理的需求进行了下简单的分析,同时进入学校的图书馆管理系统体会已经设计好的数据库系统所应包含的功能与信息。
华北科技学院计算机系综合性实验
实验报告
课程名称信息系统分析与设计
实验学期 2010 至 2011 学年第二学期学生所在系部计算机系
年级 08级专业班级信管B082 学生姓名牛站威学号 200807034231 任课教师沙嘉祥
实验成绩
计算机系制
《信息系统分析与设计》课程综合性实验报告
(2)试题库系统中,“随机抽题”的用例规约描述,如下图:
用例名称随机抽题
参与者教师(主要参与者)
假设抽题参数及规则可以被系统识别,系统根据用户输入的抽题参数进
行相应的单选题和填空题的组题操作,最后形成试卷前置条件用户已被识别和授权,普通用户输入的抽题参数有效。
后置条件根据参数成功生成相应的题型试卷表,添加试卷表到试卷表库。
主事件流 1. 普通用户将抽题参数信息输入给系统并进行有效的验证;
2. 系统验证用户身份和抽题参数的有效性;
3. 验证信息合法后系统将有效的抽题参数传递给题库;
4. 题库根据抽题参数,随机抽取符合参数的题目;
5. 题库累计抽取的题量;
3.试题库系统的类图描述,如下图:。
华北科技学院计算机学院综合性实验实验报告课程名称数据库原理与应用D 实验学期 2013 至 2014 学年第 2 学期学生所在系部计算机系年级 2012级专业班级信管B122 学生姓名学号任课教师郭慧实验成绩计算机学院制实验报告须知1、学生上交实验报告时,必须为打印稿(A4纸)。
页面空间不够,可以顺延。
2、学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、内容、结果及分析等。
3、教师应该填写的内容包括:实验成绩、教师评价等。
4、教师根据本课程的《综合性实验指导单》中实验内容的要求,评定学生的综合性实验成绩;要求在该课程期末考试前将实验报告交给任课教师。
综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。
任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。
5、未尽事宜,请参考该课程的实验大纲和教学大纲。
《数据库原理与应用D》课程综合性实验指导单适用专业:信息管理与信息系统《数据库原理与应用D》课程综合性实验报告开课实验室:基础五2014年6月18日实现的关键代码:<% Connection conn=null;注册界面的代码这里不予显示。
只显示确认信息的代码和连入数据库的代码。
<%Connection conn=null;功能:通过新闻的关键字来查询新闻。
经过调试,出现错误的原因是未给传值的id和md类定义。
导致出现无法传值无法显示表的情况。
将用户id的定义改为了String user=(String)session.getAttribute("username");id的值更改为用户名的值,并且通过session来长久保留,这样才能在连接外键的乱码问题是常见的问题,代码的任何错误都有可能导致乱码的产生,例如以下这两GBK与GB2312的不匹配等。
华北科技学院计算机系综合性实验实验报告课程名称 Linux操作系统实验学期 2017 至 2018 学年第二学期学生所在院部管理学院年级 2015级专业班级电商B151 学生姓名李文杰学号 201504064121 成绩评定:1、工作量: A()、B()、C()、D()、F( )2、难易度: A()、B()、C()、D()、F( )3、答辩情况:基本操作: A()、B()、C()、D()、F( )代码理解: A()、B()、C()、D()、F( )4、报告规范度: A()、B()、C()、D()、F( )5、学习态度: A()、B()、C()、D()、F( )总评成绩:指导教师:计算机系制《Linux操作系统》课程综合性实验报告开课实验室:基础二2018年5月10日(1)在上午10:35删除/home/stu/abc目录下的全部子目录和全部文件1、在/home/stu目录下新建abc文件夹,并在里面写入任意文件。
2、新建lwj.cron文件写入以下程序:3、在终端输入执行在lwj.cron的程序4、可见abc里面的文件被删除(2)从早8:00~下午6:00每小时读取/home/stu /xyz目录下x1文件中每行第一个域的全部数据加入到/home/stu /backup目录下的back01.txt文件内;1、在/home/stu /xyz目录下新建www1文件,写入以下内容:2、在z1.cron文件中写入第二条程序:3、终端输入执行z1.cron的程序,可见back01.txt文件成功录入(3)每逢星期一上午6:25将/home/stu /data目录下的所有目录和文件归档并压缩为文件:backup.tar.gz;1、在/home/stu /data目录下创建lwj和lwj.txt两个文件2、在z1.cron文件里输入第三条程序:3、查看/home/stu目录。
发现该目录下增加一个压缩包:(4)在上午5:55将U盘卸载。
华北科技学院综合性实验报告课程名称汇编语言实验学期 2017 至 2018 学年第 1 学期学生所在系部计算机学院网络工程系年级三年级专业班级网络B15- 学生姓名学号任课教师实验成绩计算机学院制《汇编语言》课程综合性实验报告(4)排序流程图(5)程序运行结果图(6)总结与体会在这次的综合实验中,遇到了很多细节问题,首先就是在进行循环没有及时的对CX计数器进行入栈保存,以至于在输出时显示的不是学生的信息而是乱码,其次就是对寄存器CX的值没有能够正确的把握,因为在循环中没有给计数器赋予正确的值则在转存、比较、输出时都会出现错误,交换子程序比较十位比较个位交换分数交换姓名、学号寄存器加间隔大于小于小于源代码:DATAS SEGMENTmess0 db 0ah,0dh,'num name score xuehao$';mess1 db 0ah,0dh,'input name :$'mess2 db 0ah,0dh,'input score:$'mess3 db 0ah,0dh,'input xuehao:$'mess4 db'xueshengchengjipaixu$'p equ 3;输入的人数buff1 db 10,?,10 dup(0);姓名缓冲区,加$符号以便输出时使用buff2 db 3,?,3 dup(0);成绩缓冲区buff3 db 4,?,4 dup(?)sname db p dup(10 dup(0));保存姓名score db p dup(3 dup(0));保存成绩xuehao db p dup(4 dup(0))sing1 dw 0sing2 dw 0sing3 dw 0count db'1';计数;此处输入数据段代码DATAS ENDSSTACKS SEGMENT;此处输入堆栈段代码STACKS ENDSCODES SEGMENTASSUME CS:CODES,DS:DATAS,SS:STACKS hong1 macro ;定义回车换行的宏mov dl,0ahmov ah,2int 21hmov dl,0dhmov ah,2int 21hendmhong2 macro opr1,opr2 ;定义输入输出lea dx,opr1mov ah,opr2int 21hendmhong3 macro ;定义空格mov dl,20hmov ah,2int 21hendmhong4 macro opr1,opr2 ;清楚缓存区里的回车键mov al,opr1add al,2mov ah,0mov si,axmov opr2,0endmhong5 macro opr1,opr2,opr3,opr4 ;传送姓名mov cx,opr1lea si,opr2lea di,opr3add di,opr4cldrep movsbmov cx,opr1mov ax,0lea di,opr3endmSTART:MOV AX,DATASMOV DS,AXmov es,axmov bx,0;mov cx,0hong2 mess4,9hong1call input;调用子程序1call bijiaocall printmov ah,4chint 21h ;子程序1,输入姓名、成绩,学号input procinc bx;输入次数统计cmp bx,p;输入次数>p?ja exithong2 mess1,9 ;宏调用提示和输入姓名lea dx,buff1;显示提示1mov ah,10int 21hmov al,buff1+1;实际输入个数放入ALadd al,2;+2,包含buff1的0,1单元号mov ah,0mov si,ax;回车0d所在位置,跟在最后一个字符后mov buff1[si],0;将0d换为0,便于输出显示hong2 mess2,9 ;宏调用提示和输入分数hong2 buff2,10hong4 buff2+1,buff2[si] ;宏调用清空回车键hong2 mess3,9 ;宏调用提示和输入学号hong2 buff3,10hong4 buff3+1,buff3[si] ;宏调用清空回车键cmp bx,1jz let5add sing1,10add sing2,3add sing3,4let5:call zhuancunjmp inputexit:retinput endp;转存子程序zhuancun procmov cx,10lea si,buff1+2 ;传送姓名lea di,snameadd di,sing1cldrep movsbmov cx,10 ;将缓存区清空mov ax,0lea di,buff1+2rep stosbhong5 3,buff2+2,score,sing2 hong5 4,buff3+2,xuehao,sing3 retzhuancun endp;比较子程序bijiao procmov cx,ploop1:push cx ;保存外循环mov di,0mov si,0mov bx,0mov cx,p-1bj1:mov al,score[bx] ;比较十位cmp al,score[bx+3]jle bj2add bx,3add si,10add di,4dec cxjnz bj1jmp out1bj2:jl bj3 ;比较个位mov al,score[bx+1]cmp al,score[bx+4]jl bj3add bx,3add si,10add di,4dec cxjnz bj1jmp out1bj3:mov al,score[bx] ;进行交换两个数字的位置xchg al,score[bx+3]mov score[bx],almov al,score[bx+1]xchg al,score[bx+4]mov score[bx+1],alpush sipush cxmov cx,10lp1:mov al,sname[si]xchg al,sname[si+10]mov sname[si],alinc sidec cxjnz lp1push dimov cx,4lp2:mov al,xuehao[di]xchg al,xuehao[di+4]mov xuehao[di],alinc diloop lp2pop dipop cxpop siadd si,10add di,4add bx,3dec cxjnz bj1out1:pop cxdec cxjnz loop1retbijiao endp;输出子程序print prochong1hong2 mess0,9mov cx,pmov bx,0mov si,0mov di,0rept1: ;输出名次push cxhong1mov dl,countmov ah,2int 21hinc countmov cx,7l1:hong3loop l1mov cx,10let1: ;输出姓名mov dl,sname[bx] mov ah,2int 21hinc bxloop let1hong3mov cx,3let2: ;输出分数mov dl,score[si]mov ah,2int 21hinc siloop let2mov cx,5l2:hong3loop l2mov cx,4let3: ;输出名次mov dl,xuehao[di]mov ah,2int 21hinc diloop let3hong1pop cxloop rept1retprint endpCODES ENDSEND START。
华北科技学院计算机学院综合性实验实验报告课程名称网络数据库实验学期 2017 至 2018 学年第一学期实验题目: 图书借阅系统数据库设计实验地点: 信息楼大软实验时间: 2017-11-22班级学号学生姓名成绩评定:1、工作量: A(),B(),C(),D(),F( )2、难易度: A(),B(),C(),D(),F( )3、答辩情况:基本操作: A(),B(),C(),D(),F( )代码理解: A(),B(),C(),D(),F( )4、报告规范度: A(),B(),C(),D(),F( )5、学习态度: A(),B(),C(),D(),F( )总评成绩:指导教师: 孙改平计算机学院制一、实验目的通过该实验把数据库的理论知识(数据库和数据表的设计理论、视图、索引、存储过程、触发器、数据库备份、数据库安全等)应用到具体的综合实例中,达到数据库知识整合的目的。
完成学生成绩管图书借阅理系统基本功能设计,提高学生的分析问题、解决问题的能力。
二、设备与环境硬件:多媒体计算机软件:WindowsXP以上的操作系统、Oracle 10g 数据库管理系统三、实验内容及实验结果1.数据库设计设计思想(1)用户身份用户、管理员。
(2)图书管理模块对图书进行添加、查询、修改、删除、添加。
(3)副本信息模块对图书的副本信息进行添加、修改、删除。
(4) 用户管理模块对用户进行添加、删除、修改。
2.数据表设计设计思想Books表Copies表Authors表Categories表Writers表Publishers表Users表具体实现表空间的创建create tablespace dataloggingdatafile'D:\Oracle\product\10.2.0\oradata\library\data01.dbf' size 50mreuse autoextend off;数据表. 数据表的创建(1)创建Books表create table Books(isbn char(20) not null primary key,title char(30),pubname char(30),author char(30),authorno number(30),zncode number(30));(2)创建Copies表create table copies(copyno number(10) not null primary key, isbn char(20),constraint fk_copyno foreign key(isbn) references Books(isbn));(3)创建Authors表create table Authors(authorno number(10) not null primary key,authorname char(20));(4)创建Categories表create table Categories(zncode number(20)not null primary key,catename char(20));(5)创建Writers表create table Writers(isbn char(20)not null,authorno number(20)not null,constraint pk_writers primary key(isbn,authorno));(6)创建Publishers表create table Publishers(pubname char(30)not null primary key,address char(50));(7)创建Users表create table Users(UserName char(20) not null,UserPwd char(20) not null,UserNo number(12) primary key,Birth date not null,Quanxian number(20),Email char(30),TEL char(20),Address char(20));3.视图设计设计思想(1)创建视图“cx_books”,查看图书的图书编码,书名,出版社名,中南分校编码,作者名,作者号。
华北科技学院计算机学院综合性实验
实验报告
课程名称计算机网络
实验学期 2014 至 2015 学年第二学期学生所在系部计算机学院
年级 B2012级专业班级计科 B12-1 学生姓名江明月学号 2
任课教师高晓燕
实验成绩
计算机学院制
实验报告须知
1、学生上交实验报告时,必须为打印稿(A4纸)。
页面空间不够,可以顺延。
2、学生应该填写的内容包括:封面相关栏目、实验地点、时间、目的、设备环境、
内容、结果及分析等。
3、教师应该填写的内容包括:实验成绩、教师评价等。
4、教师根据本课程的《实验指导》中实验内容的要求,评定学生的综合性实验成
绩;要求在该课程期末考试前将实验报告交给任课教师。
综合性实验中,所涉及的程序,文档等在交实验报告前,拷贝给任课教师。
任课教师统一刻录成光盘,与该课程的期末考试成绩一同上交到系里存档。
5、未尽事宜,请参考该课程的实验大纲和教学大纲。
《数据通信与计算机网络》课程综合性实验报告
一、实验目的
1.通过实验,学习和掌握TCP/IP协议分析的方法及其相关工具的使用。
2.熟练掌握 TCP/IP体系结构;
3.学会使用网络分析工具。
4.网络层、传输层和应用层有关协议分析;
二、设备与环境
●Windows 2000 server 操作系统
●TCP/IP 协议
●Wireshark工具软件
三、实验内容
1.安装VMware虚拟机和配置VMware虚拟机(选做)。
2.要求同学掌握网络抓包软件Wireshark内容包括捕获网络流量进行详细分析:
利用专家分析系统诊断问题;
实时监控网络活动;
收集网络利用率和错误等;
3.协议分析(一):IP协议,内容包括:
IP头的结构;
IP数据报的数据结构分析;
4.协议分析(二):TCP/UDP协议,内容包括:
TCP协议的工作原理;
TCP/UDP数据结构分析;
5.协议分析(三):应用层协议分析,内容包括:完整的FTP会话分析。
四、实验步骤
1.安装并运行wireshark并打开捕获界面。
2.捕获选项
图一
3.开始抓包
点击上图中的“Start”开始抓包几分钟就捕获到许多的数据报,主界面入托所示:
图二
如上图所示,可看到很多捕获的数据。
选中第8个数据帧,然后从整体上看看wirrshark的窗口,主要被分成三部分。
上面部分是所有数据帧的列表:中间部分是数据帧的描述信息:下面部分是帧里面的数据。
图三
二.分析UDP、TCP协议
1、TCP协议
在因特网协议族中,TCP层位于IP层之上,应用层之下的中间层。
不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。
TCP建立连接之后,通信双方都同时可以进行数据的传输,其次,它是全双工的;在
保证可靠性上,采用超时重传和捎带确认机制。
以访问说明一次完整的TCP建立的三次握手过程。
第一次握手
要建立TCP连接,首先需要客户机向服务器发起建立连接的请求,及第一次握手的报文。
在此报文中,SYN字段置为1。
由于之前连接不存在,所以没有对之前接受的确认,故ACK字段被置为0。
同时由于连接还没有建立,不能发送数据,从而序列号也应该为0。
采用wireshark的过滤功能,用tcp.flags.syn==1 显示TCP中SYN字段为1的数据包,由SYN字段的定义知道这是建立TCP连接的报文。
从中找到ack=0的包即表示第一次TCP握手(此处以49号数据包为TCP建立的第一次握手为例)。
图四
由上图可以看出源IP地址为:192.168.1.100,目的IP地址为222.89.166.13。
TCP报文分析:
Transmission Control Protocal, Src Port : 54132 (54132), Dst Prot: http (80), Seq: 0, Len: 0
Souce port: 54132 (54132) //源端口号
通过报文分析,知道第一次握手成功。
第二次握手
第二次握手的报文由服务器发送,需要对第一次握手的报文进行恢复确认,因而ACK 字段应该置为1。
同时由于这仍然是TCP连接建立的过程,所以SYN字段置为1;没有数据传输,故而序列号为0。
接下来寻找第一次握手的报文后面ACK=1且源端口号、目的端口号与第一次握手分析的报文目的端口号、源端口号相同的报文,即表示此次TCP连接建立的第二次握手。
图五
TCP报文分析:
Transmission Control Protocol, Src Port: http (80), Dst Port: 54132 (54132), Seq: 0, Ack: 1, Len: 0 //状态行
Source port: http (80) //源端口号
Destination port: 54132 (54132) //目的端口号(与第一次握手的报文对比发现源与目的的端口号互换了)
[Stream index: 3] //根据源和目的IP及端口号生成的一个索引号
客户机接收到第二次握手的报文后,对服务器发送第三次握手的报文。
在该报文中,需要对第二次握手的报文进行确认,即ACK字段置为1。
此时连接已经建立,SYN字段被置为0,同时可以发送数据,故序列号不再为0。
采用wireshark的过滤功能,用tcp.flags.syn==0 显示TCP中SYN字段为0的包。
找到第二次握手报文后ACK=1且源端口号、目的端口号与第一次握手分析的报文源端口号、目的端口号相同的报文,即为此次连接的第三次握手。
图六
通过报文分析,知道第三次握手成功。
至此,成功建立了一条源IP地址为:192.168.1.100,目的IP地址为222.89.166.13,源端口号为:54132 (54132),目的端口号为http (80)的TCP连接。
图七
TCP连接的删除
同样以访问说明一次完整的TCP连接删除的四次再见过程。
第二次、第三次再见
由关闭TCP连接的机制,知道第二次再见的报文应接在第一次再见报文的后面。
分析端口号匹配后,找到第二次再见的报文。
分析关闭TCP连接的机制知道,第二次与第三次再见由同一个报文包含。
图九
第四次再见
仿照上面,找到第四次再见的报文。
图十
2、UDP协议
UDP协议全称是用户数据报协议,在网络中它与TCP协议一样用于处理数据包,是一种无连接的协议。
在OSI模型中,在第四层——传输层,处于IP协议的上一层。
UDP有不提供数据包分组、组装和不能对数据包进行排序的缺点,也就是说,当报文发送之后,是无法得知其是否安全完整到达的。
UDP用来支持那些需要在计算机之间传输数据的网络应用。
包括网络视频会议系统在内的众多的客户/服务器模式的网络应用都需要使用UDP协议。
UDP协议从问世至今已经被使用了很多年,虽然其最初的光彩已经被一些类似协议所掩盖,但是即使是在今天UDP仍然不失为一项非常实用和可行的网络传输层协议。
原始框显示了分组中包含的数据的每个字节,从中可以观察最原始的阐述数据。
方框左边是十六进制的数据,右边是ASCII码。
报文的二进制,即发送的最原始内容。
现在选择其中第八个包进行分析:
图十一
第一行,现在此帧基本信息。
名称,283字节。
第二行,显示到达时间 2015.05.30
第4-6行,帧距离前一个帧的捕获时间差:0.449835000s
第8、9行,现在帧长度和捕获长度,分别为283字节和283字节
第12、13、14行,现在此帧类型,为UDP类型。
五、协议验证及结果分析
TCP是一种面向连接的、可靠的、基于字节流的运输层通信协议。
在简化的计算机网络OSI 模型中,它完成传输层所指定的功能
通过分别分析UDP与TCP的通信过程,明显感觉到TCP的传输要复杂的多。
也就明白了,尽管TCP提供了可靠的数据传输服务,为什么很多应用的开发人员情愿在UDP而不是TCP上构建应用。
作为电脑之间必须要遵守的功能,就好比两个人沟通就必须要使用同一种语言一样。
一个只懂英语和一个只懂中文的人没有办法沟通,因为没有共同的语法(规则)而无法沟通。
两台电脑之间进行通讯所共同遵守的规则,就是网络协议。
TCP/IP是一个协议族,也按照层次进行划分。
我们并不需要了解所有层次的协议,主要关注应用层和传输层的协议就可以了。