SlideShare a Scribd company logo
Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733)
Page 1 of 6
INFSYS 3842/6836
Assignment 4 (Lab): Understanding TCP and HTTP using Wireshark
Points Possible: 100
Due Date: December 12, 2016 by 11:59pm Central Time
IMPORTANT NOTE: THIS LAB MUST BE CARRIED OUT ON YOUR OWNCOMPUTER AND OWN
NETWORK. PLEASE DO NOT CAPTURE PACKETS ON A NETWORK THAT YOU DO NOT OWN.YOU’VE
BEEN WARNED!
Lab Overview:We’ll continueexploring “layersof functionality”providedbydifferentprotocols and
understandingsyntax of majorprotocol dataunits. Inthislabwe will focuson TransmissionControl
Protocol (TCP) andHyperText TransferProtocol (HTTP)
Lab Purpose:
1) To continue learningthe basicsof how touse Wiresharkto capture networktraffic(from
students’owncomputersandownnetworks)
2) To learnaboutbasic “Capture Filters” available inWireshark
3) To understandHTTP requestsandresponses
4) Understandthe syntax of TCP segmentheader.
Lab Tasks: This labhas twotasks withfourquestionseachfora total of 8 questions.
TASK 1: (This task has four questions)
In thistaskyou will use Wiresharktocapture basicHTTP trafficand complete the activitiesand
questionsasdescribedbelow.
STEPS:
1) OpenWiresharkandidentifythe interface youwill capture trafficfrom(WirelessorEthernetLAN)
2) Close all browserwindows and other applications.
3) Opena browserwindowandtype in http://www.umsl.edu/~khanshaj/3842/.DONOT
PressEnteryet.
4) Go back to Wiresharkand Start a capture.
5) Go back to the browserwindowandnow hitenterto visitthe page.
6) Once the page loads, close the browser window
7) Returnto Wiresharkand Stop the capture. Save the capture on your computer. Call it
“FirstName_LastName_Assignment4_Capture”.
8) Examine the packetscapturedandscroll to find“greencoloredrows”thatdenote “TCP”based
traffic.Notice the Three-stephandshakeandthe HTTPrequestsand data responsesfromthe server,
acknowledgements,andfourstepclosing.
9) In the filterbox type in“http”to filterall httprelatedpackets.Alsotry“tcp or http”to
simultaneouslysee both TCP andHTTP packetsand filteroutthe rest.
Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733)
Page 2 of 6
LAB Question1: Whenyou requestedthe page atthe http://www.umsl.edu/~khanshaj/3842/ URL,
how many requestsdidyour browsersendtothe server? [Tip:Type in“http” inthe filterbox toonly
see httprelatedpacketssothat youcan easilycountthe requests]
There are 8 packets.There are 4 GET requestsfromthe computertothe serverand4 OK
responsesfromthe serverbacktothe computer.
LAB Question2: For each of the requests,please provide the a) FILENAMEandFILE Extension,b) aBrief
Descriptionof the file beingrequested,c) the type of HTTP Request(get,post,etc.See:
http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods formore informationon
differenttypesof HTTPRequestMethods).
HTTP 1: GET Request/~khanshaj/3842/HTTP/1.1; index.html (text/html)
HTTP 2: GET Request/~khanshaj/3842/style.cssHTTP/1.1;(text/css)
HTTP 3: GET Request/~khanshaj/3842/images/umsl_business_is_pngHTTP/1.1 ; (image/png)
HTTP 4: GET Request/favicon.icoHTTP/1.1; (image/vnd.microsoft.icon)
LAB Question3: How many serverRESPONSESwere receivedbyyourmachine?Examine the response
packetscarefullyforeachof the responses.Identifythe followingforeachresponse:
a) The HTTP “StatusCode”and itsmeaning
a. All 4 responsessaid:HTTP/1.1200 OK whichmeansnoerror infulfilling request
b) ContentType
a. (text/html),(text/css),(image/png),(image/vnd.microsoft.icon)
LAB Question4: Explainclearly,whythe browserhadtomake that manyrequestswhenall youwanted
to do wasviewthe page at http://www.umsl.edu/~khanshaj/3842/. Please discussthe role of each
“resource” beingrequested(forexample,whywas the “style.css” file requestedetc.).
The webpage beingrequestedhadtomake fourdifferentobjectrequestandfourdifferent
responsestobe able toobtainthe page. There are fourdifferentmediafilescalled:(text/html),
(text/css),(image/png),and(image/vnd.microsoft.icon).
TASK 2: (This task has four questions)
FINDTHE PACKETthat belongstothe first HTTP REQUEST message (for/~khanshaj/3842/). See picture
below.
Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733)
Page 3 of 6
10) Withthe above GET requestpacket selected(it shouldremainhighlighted),please complete the
rest of thislab
Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733)
Page 4 of 6
LAB Question5: Using the packetassociatedwiththe GET requestasmentionedabove,pleasecomplete the followingfieldsinthe TCPsegment
headerbelow.The ideahere istolearnaboutthe differentfieldsandwhattheyaccomplish. NOTE:Althoughthe fieldvaluesare alwaysinbinary
(as seeninthe bottommostsectionof yourcapture) please feel freetoprovide the valuesastheyappearinthe MIDDLE part (i.e.eitherdecimal
or hex as the case maybe). Type inyourvaluesinthe “Grey”shadedareasimmediatelybeloweachfield.
[Hint: please visithttp://en.wikipedia.org/wiki/Transmission_Control_Protocol tolearn more about TCP and lookfor the section“Segment
Structure” to betterunderstand what each of the fieldsbelowmean]
TCP Header
OffsetOctet 0 1 2 3
Octet Bit 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31
0 0 Source Port Number Destination Port Number
61957 80
4 32
Sequence Number
(relative sequence number is fine)
1965
8 64
Acknowledgement Number (if ACK bit is set)
(relative ACK number is fine)
19560
12 96 Data offset
Reserved
NS
CWR
ECE
URG
ACK
PSH
RST
SYN
FIN
Window Size
0 0 0
12 96 32 bytes 0 0 0 0 1 1 0 0 0 61
16 128 Checksum Urgent pointer (if URG is set)
0x67c1 0
20
…
160
…
Options (if Data offset value is > 5)
… (options could be up to 40 bytes, making the TCP header anywhere from 20 bytes minimum to 60 bytes maximum)
[Note: TCP header padding is used to ensure that the TCP header ends and data begins on a 32 bit boundary. The padding is
composed of zeros.)
Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733)
Page 5 of 6
LAB Question6: For each of the TCP segmentheaderfieldsyoucompletedabove,please briefly
describe itspurpose/meaning. Whenpossible,pleaseanswerthisquestionbothingeneralaswell asin
particularto the segmentyouare currentlyexamining. Forexample, destinationportspecifies the
receiving portwhich in the currentpacketis port80. Since this is a GET request,it is sent to port80 on
the serverside which is the well-known portserversuseforlistening to HTTP traffic)
[Hint:A goodreadingof the above linkand understandingthe segmentstructure willhelpwith
thistask.The answersare givenonthe linkabove buttry to actuallyunderstandwhateachfield
does]
Source Port Number: this is the assigned number that identifies the sending port
Destination Port Number: this is the assigned number that identifies the destination port
Sequence Number: This is 32 bits and has a dual role- if SYN flag is set (1) then this is the initial
sequence number. Sequence number of the actual first data byte and the acknowledged
number in the corresponding ACK are then this same sequence plus 1. - if the SYN flag is clear
(0) then this is the accumulated sequence number of the first data byte of the segment for the
current session.
Acknowledgement Number: This is 32 bits and if ACK is flagged then the value of the field is the
next sequence number of the first data byte of this segment that the sender is expecting. If there
are any bytes this recognizes (or acknowledges) the receipt of all prior bytes. The first ACK sent
by each end does acknowledge the other ends initial sequence number itself but no data is
there.
Data offset: This is 4 bits and does specify the size of the TCP header in 32-bit
words. Minimum size header is 5 words and the maximum is 15 words thus giving 20 bytes
minimum to 60-bytes maximum allowing for up to 40 bytes of options in the header. This field is
also the offset from the start of the TCP segment to the actual data.
NS: A 1-bit flag that is the ECN-nonce concealment protection.
CWR: A 1-bit flag known as Congestion Window Reduced which is set by sending the host to
indicate that it received a TCP segment with the ECE flag set and had responded in congestion
control mechanism. This is added to header by RFC 3168.
ECE: A 1-bit flag that is the ECN-Echo which has a dual role depending on the value of SYN
flag. It indicates -if the flag is set to 1 that the TCP peer is ECN capable, -if the flag is set to 0
(clear) that a packet with congestion experienced flag set (ECN = 11) in IP Header received
during normal transmission which is added to the header by RFC 3168. Does serve as an
indication of network congestion to the TCP sender.
URG: A 1-bit field which indicates that the urgent pointer field is significant.
ACK: A 1-bit field that indicates that the acknowledgement field is significant which means that
all packets after the initial SYN packet sent by the client should have this flag set.
PSH: A 1-bit field which is a Push Function. This asks to push the buffered data to the receiving
application.
RST: A 1-bit field which resets the connection.
SYN: A 1-bit field which synchronizes the sequence numbers. Only the first packet sent from
each end should have the flag set. Some other flags and fields change meaning based on this
flag and some are only valid for when it is set and others when it is clear.
FIN: A 1-bit field which has no more data from the sender.
Window Size: This is a 16-bit field which is the size of the receive window, which specifies the
number of the window size units (which by default is in bytes) (also beyond the segment
identified by the sequence number in the acknowledgement field) that the sender of the
segment is willing to receive at the current time.
Checksum: This is a 16-bit field which is used for checking errors of the header and data.
Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733)
Page 6 of 6
Urgent Pointer: This is a 16-bit field. When this flag is set then the field is an offset from the
sequence number indicating the last urgent data byte.
LAB Question7: What is the minimumsize of the TCPsegmentheaderinbytes?Whatisthe maximum
size?
Minimumsize is20 bytesandmaximumsize 60 bytes.
LAB Question8: Giventhe above isthe TCPsegment’s header
1) Where do youthinkisthe data(payload) of thissegmentlocated (i.e.doesitprecedeorfollowthe
header)?
The data section(payload) followsthe header.
2) What wouldconstitute the data portionof thisTCPsegment? (Be specificinyouranswerbasedon
thisparticularsegment) [Hint:thisanswerwill be easierif youreadthe sectiononTCP Segment
Structure of the Wikipedialinkabove andalsounderstandhow HTTPusesTCP]
TCP acceptsdata from a data streamand dividesitintochunkswhichaddsthe TCPheader
creatingthe TCP segment.The segmentisthenencapsulatedintoanIPdatagram and
exchangedwithpeers. Therefore,the datastreamconstitutesthe dataportionof the TCP
segment.
LAB DELIVERABLES (to be uploadedto MyGateway):
1) UploadcompletedWorddocument
2) Uploadthe Wiresharkcapture file
GETTING HELP:
1) Call (314-489-9733) / email (shajikhan@umsl.edu)me anytime.Feelfree towalk-intomyoffice
if you see me there orsetupappointment.Tutorsare alsoavailable (see MyGateway/Faculty
Informationforhours,orsimplywalkintocybersecuritylab,ESH204 duringlabhours).
2) Of course try to helpeachotherout.If some studentsare alreadyfamiliarwiththe taskslisted
above,Iencourage youto helpothers.“Teaching”andhelpingothersisbyfarthe bestway to
learn!

More Related Content

What's hot

Wireshark tcp
Wireshark tcpWireshark tcp
Wireshark tcp
Yasin Abdullah
 
I Pv6 Extension Headers
I Pv6 Extension HeadersI Pv6 Extension Headers
I Pv6 Extension Headers
Ram Dutt Shukla
 
IPV6 Flow Labels
IPV6 Flow LabelsIPV6 Flow Labels
IPV6 Flow Labels
Binan AL Halabi
 
Np unit iv ii
Np unit iv iiNp unit iv ii
Np unit iv ii
vamsitricks
 
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENTTCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
mayank's it solution pvt.ltd
 
Ipv6 1-091110143246-phpapp01
Ipv6 1-091110143246-phpapp01Ipv6 1-091110143246-phpapp01
Ipv6 1-091110143246-phpapp01
Rimba Ari
 
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
IOSR Journals
 
Np unit1
Np unit1Np unit1
Np unit1
vamsitricks
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design report
Raj Gupta
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design report
Abhishek Datta
 
Wireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filtersWireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filters
Yoram Orzach
 
Ch 09 -- ARP & IP Analysis
Ch 09 -- ARP & IP AnalysisCh 09 -- ARP & IP Analysis
Ch 09 -- ARP & IP Analysis
Yoram Orzach
 
TCPIP
TCPIPTCPIP
APNIC Hackathon IPv4 & IPv6 security & threat comparisons
APNIC Hackathon IPv4 & IPv6 security & threat comparisonsAPNIC Hackathon IPv4 & IPv6 security & threat comparisons
APNIC Hackathon IPv4 & IPv6 security & threat comparisons
Siena Perry
 
84486335 address-resolution-protocol-case-study
84486335 address-resolution-protocol-case-study84486335 address-resolution-protocol-case-study
84486335 address-resolution-protocol-case-study
homeworkping3
 
Np unit iii
Np unit iiiNp unit iii
Np unit iii
vamsitricks
 
ECET 465 help Making Decisions/Snaptutorial
ECET 465 help Making Decisions/SnaptutorialECET 465 help Making Decisions/Snaptutorial
ECET 465 help Making Decisions/Snaptutorial
pinck2329
 
Ipv6 cheat sheet
Ipv6 cheat sheetIpv6 cheat sheet
Ipv6 cheat sheet
Swarup Hait
 
Socket Programming
Socket ProgrammingSocket Programming
Socket Programming
CEC Landran
 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
Olivier Bonaventure
 

What's hot (20)

Wireshark tcp
Wireshark tcpWireshark tcp
Wireshark tcp
 
I Pv6 Extension Headers
I Pv6 Extension HeadersI Pv6 Extension Headers
I Pv6 Extension Headers
 
IPV6 Flow Labels
IPV6 Flow LabelsIPV6 Flow Labels
IPV6 Flow Labels
 
Np unit iv ii
Np unit iv iiNp unit iv ii
Np unit iv ii
 
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENTTCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
TCP/IP 3RD SEM.2012 AUG.ASSIGNMENT
 
Ipv6 1-091110143246-phpapp01
Ipv6 1-091110143246-phpapp01Ipv6 1-091110143246-phpapp01
Ipv6 1-091110143246-phpapp01
 
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
Comparative study of IPv4 & IPv6 Point to Point Architecture on various OS pl...
 
Np unit1
Np unit1Np unit1
Np unit1
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design report
 
CS 6390 Project design report
CS 6390 Project design reportCS 6390 Project design report
CS 6390 Project design report
 
Wireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filtersWireshark course, Ch 03: Capture and display filters
Wireshark course, Ch 03: Capture and display filters
 
Ch 09 -- ARP & IP Analysis
Ch 09 -- ARP & IP AnalysisCh 09 -- ARP & IP Analysis
Ch 09 -- ARP & IP Analysis
 
TCPIP
TCPIPTCPIP
TCPIP
 
APNIC Hackathon IPv4 & IPv6 security & threat comparisons
APNIC Hackathon IPv4 & IPv6 security & threat comparisonsAPNIC Hackathon IPv4 & IPv6 security & threat comparisons
APNIC Hackathon IPv4 & IPv6 security & threat comparisons
 
84486335 address-resolution-protocol-case-study
84486335 address-resolution-protocol-case-study84486335 address-resolution-protocol-case-study
84486335 address-resolution-protocol-case-study
 
Np unit iii
Np unit iiiNp unit iii
Np unit iii
 
ECET 465 help Making Decisions/Snaptutorial
ECET 465 help Making Decisions/SnaptutorialECET 465 help Making Decisions/Snaptutorial
ECET 465 help Making Decisions/Snaptutorial
 
Ipv6 cheat sheet
Ipv6 cheat sheetIpv6 cheat sheet
Ipv6 cheat sheet
 
Socket Programming
Socket ProgrammingSocket Programming
Socket Programming
 
Part 12 : Local Area Networks
Part 12 : Local Area Networks Part 12 : Local Area Networks
Part 12 : Local Area Networks
 

Similar to Understanding TCP and HTTP

Osi model
Osi modelOsi model
Osi model
Anuj Kumar
 
tcpheader-151221111244.pdf
tcpheader-151221111244.pdftcpheader-151221111244.pdf
tcpheader-151221111244.pdf
EnumulaBhargava1
 
Tcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication headerTcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication header
Faizan Shaikh
 
Internet Protocol
Internet ProtocolInternet Protocol
Internet Protocol
Ghaffar Khan
 
CCNA Interview.pdf
CCNA Interview.pdfCCNA Interview.pdf
CCNA Interview.pdf
hoang971
 
REMnux tutorial 4.1 - Datagrams, Fragmentation & Anomalies
REMnux tutorial 4.1 - Datagrams, Fragmentation & AnomaliesREMnux tutorial 4.1 - Datagrams, Fragmentation & Anomalies
REMnux tutorial 4.1 - Datagrams, Fragmentation & Anomalies
Rhydham Joshi
 
Custom_IP_Network_Protocol_and_Router
Custom_IP_Network_Protocol_and_RouterCustom_IP_Network_Protocol_and_Router
Custom_IP_Network_Protocol_and_Router
Vishal Vasudev
 
Ipspk1
Ipspk1Ipspk1
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Hamidreza Bolhasani
 
the transport layer
the transport layerthe transport layer
the transport layer
tumetr1
 
5-LEC- 5.pptxTransport Layer. Transport Layer Protocols
5-LEC- 5.pptxTransport Layer.  Transport Layer Protocols5-LEC- 5.pptxTransport Layer.  Transport Layer Protocols
5-LEC- 5.pptxTransport Layer. Transport Layer Protocols
ZahouAmel1
 
Network Protocol Analysis
Network Protocol AnalysisNetwork Protocol Analysis
Network Protocol Analysis
Krishbathija
 
Wireshark Lab IP v6.0 Supplement to Computer Networking.docx
Wireshark Lab IP v6.0  Supplement to Computer Networking.docxWireshark Lab IP v6.0  Supplement to Computer Networking.docx
Wireshark Lab IP v6.0 Supplement to Computer Networking.docx
alanfhall8953
 
04 MK-PPT End-to-End Protocols.ppt
04 MK-PPT End-to-End Protocols.ppt04 MK-PPT End-to-End Protocols.ppt
04 MK-PPT End-to-End Protocols.ppt
dhivyak49
 
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
Kruti Niranjan
 
Transport layer issues and challenges - Guide
Transport layer issues and challenges - GuideTransport layer issues and challenges - Guide
Transport layer issues and challenges - Guide
GOPINATHS437943
 
Rach procedure in lte
Rach procedure in lteRach procedure in lte
Rach procedure in lte
Saurav Banerjee
 
Chapter 3. sensors in the network domain
Chapter 3. sensors in the network domainChapter 3. sensors in the network domain
Chapter 3. sensors in the network domain
Phu Nguyen
 
MK-PPT Chapter 5.ppt advanced computer networks
MK-PPT Chapter 5.ppt advanced computer networksMK-PPT Chapter 5.ppt advanced computer networks
MK-PPT Chapter 5.ppt advanced computer networks
1JT19IS042SandhyaH
 
Adhoc and Sensor Networks - Chapter 07
Adhoc and Sensor Networks - Chapter 07Adhoc and Sensor Networks - Chapter 07
Adhoc and Sensor Networks - Chapter 07
Ali Habeeb
 

Similar to Understanding TCP and HTTP (20)

Osi model
Osi modelOsi model
Osi model
 
tcpheader-151221111244.pdf
tcpheader-151221111244.pdftcpheader-151221111244.pdf
tcpheader-151221111244.pdf
 
Tcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication headerTcp header/IP Header/Authentication header
Tcp header/IP Header/Authentication header
 
Internet Protocol
Internet ProtocolInternet Protocol
Internet Protocol
 
CCNA Interview.pdf
CCNA Interview.pdfCCNA Interview.pdf
CCNA Interview.pdf
 
REMnux tutorial 4.1 - Datagrams, Fragmentation & Anomalies
REMnux tutorial 4.1 - Datagrams, Fragmentation & AnomaliesREMnux tutorial 4.1 - Datagrams, Fragmentation & Anomalies
REMnux tutorial 4.1 - Datagrams, Fragmentation & Anomalies
 
Custom_IP_Network_Protocol_and_Router
Custom_IP_Network_Protocol_and_RouterCustom_IP_Network_Protocol_and_Router
Custom_IP_Network_Protocol_and_Router
 
Ipspk1
Ipspk1Ipspk1
Ipspk1
 
Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)Transport Layer in Computer Networks (TCP / UDP / SCTP)
Transport Layer in Computer Networks (TCP / UDP / SCTP)
 
the transport layer
the transport layerthe transport layer
the transport layer
 
5-LEC- 5.pptxTransport Layer. Transport Layer Protocols
5-LEC- 5.pptxTransport Layer.  Transport Layer Protocols5-LEC- 5.pptxTransport Layer.  Transport Layer Protocols
5-LEC- 5.pptxTransport Layer. Transport Layer Protocols
 
Network Protocol Analysis
Network Protocol AnalysisNetwork Protocol Analysis
Network Protocol Analysis
 
Wireshark Lab IP v6.0 Supplement to Computer Networking.docx
Wireshark Lab IP v6.0  Supplement to Computer Networking.docxWireshark Lab IP v6.0  Supplement to Computer Networking.docx
Wireshark Lab IP v6.0 Supplement to Computer Networking.docx
 
04 MK-PPT End-to-End Protocols.ppt
04 MK-PPT End-to-End Protocols.ppt04 MK-PPT End-to-End Protocols.ppt
04 MK-PPT End-to-End Protocols.ppt
 
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
TCP & UDP ( Transmission Control Protocol and User Datagram Protocol)
 
Transport layer issues and challenges - Guide
Transport layer issues and challenges - GuideTransport layer issues and challenges - Guide
Transport layer issues and challenges - Guide
 
Rach procedure in lte
Rach procedure in lteRach procedure in lte
Rach procedure in lte
 
Chapter 3. sensors in the network domain
Chapter 3. sensors in the network domainChapter 3. sensors in the network domain
Chapter 3. sensors in the network domain
 
MK-PPT Chapter 5.ppt advanced computer networks
MK-PPT Chapter 5.ppt advanced computer networksMK-PPT Chapter 5.ppt advanced computer networks
MK-PPT Chapter 5.ppt advanced computer networks
 
Adhoc and Sensor Networks - Chapter 07
Adhoc and Sensor Networks - Chapter 07Adhoc and Sensor Networks - Chapter 07
Adhoc and Sensor Networks - Chapter 07
 

More from Nicole Gaehle, MSIST

Lab: Basic Reconnaissance
Lab: Basic ReconnaissanceLab: Basic Reconnaissance
Lab: Basic Reconnaissance
Nicole Gaehle, MSIST
 
Understanding Vulnerabilities in Software
Understanding Vulnerabilities in SoftwareUnderstanding Vulnerabilities in Software
Understanding Vulnerabilities in Software
Nicole Gaehle, MSIST
 
Familiarizing with a major ISMS Standard
Familiarizing with a major ISMS StandardFamiliarizing with a major ISMS Standard
Familiarizing with a major ISMS Standard
Nicole Gaehle, MSIST
 
Analysis: Office of Transfer Services Paper
Analysis: Office of Transfer Services PaperAnalysis: Office of Transfer Services Paper
Analysis: Office of Transfer Services Paper
Nicole Gaehle, MSIST
 
Entity Relationship Diagram: Weak Entity
Entity Relationship Diagram: Weak EntityEntity Relationship Diagram: Weak Entity
Entity Relationship Diagram: Weak Entity
Nicole Gaehle, MSIST
 
Database: PC and Employee
Database: PC and EmployeeDatabase: PC and Employee
Database: PC and Employee
Nicole Gaehle, MSIST
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
Nicole Gaehle, MSIST
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
Nicole Gaehle, MSIST
 
DIACAP IA CONTROLS Requirements Document
DIACAP IA CONTROLS Requirements DocumentDIACAP IA CONTROLS Requirements Document
DIACAP IA CONTROLS Requirements Document
Nicole Gaehle, MSIST
 
Understanding Layering and Ethernet
Understanding Layering and EthernetUnderstanding Layering and Ethernet
Understanding Layering and Ethernet
Nicole Gaehle, MSIST
 
Virtualization and Linux
Virtualization and LinuxVirtualization and Linux
Virtualization and Linux
Nicole Gaehle, MSIST
 
Analysis: New Threats & Countermeasure in Crime and Cyber Terrorism
Analysis: New Threats & Countermeasure in Crime and Cyber TerrorismAnalysis: New Threats & Countermeasure in Crime and Cyber Terrorism
Analysis: New Threats & Countermeasure in Crime and Cyber Terrorism
Nicole Gaehle, MSIST
 
Analysis: Guidelines for Securing WLANS and Networks of ‘Things’
Analysis: Guidelines for Securing WLANS and Networks of ‘Things’Analysis: Guidelines for Securing WLANS and Networks of ‘Things’
Analysis: Guidelines for Securing WLANS and Networks of ‘Things’
Nicole Gaehle, MSIST
 
Cryptography
CryptographyCryptography
Cryptography
Nicole Gaehle, MSIST
 
Networking Task
Networking Task Networking Task
Networking Task
Nicole Gaehle, MSIST
 
Vm Penetration Test
Vm Penetration TestVm Penetration Test
Vm Penetration Test
Nicole Gaehle, MSIST
 
Reverse Engineering Project
Reverse Engineering ProjectReverse Engineering Project
Reverse Engineering Project
Nicole Gaehle, MSIST
 
Team h hoppers group final presentation
Team h   hoppers group final presentationTeam h   hoppers group final presentation
Team h hoppers group final presentation
Nicole Gaehle, MSIST
 

More from Nicole Gaehle, MSIST (18)

Lab: Basic Reconnaissance
Lab: Basic ReconnaissanceLab: Basic Reconnaissance
Lab: Basic Reconnaissance
 
Understanding Vulnerabilities in Software
Understanding Vulnerabilities in SoftwareUnderstanding Vulnerabilities in Software
Understanding Vulnerabilities in Software
 
Familiarizing with a major ISMS Standard
Familiarizing with a major ISMS StandardFamiliarizing with a major ISMS Standard
Familiarizing with a major ISMS Standard
 
Analysis: Office of Transfer Services Paper
Analysis: Office of Transfer Services PaperAnalysis: Office of Transfer Services Paper
Analysis: Office of Transfer Services Paper
 
Entity Relationship Diagram: Weak Entity
Entity Relationship Diagram: Weak EntityEntity Relationship Diagram: Weak Entity
Entity Relationship Diagram: Weak Entity
 
Database: PC and Employee
Database: PC and EmployeeDatabase: PC and Employee
Database: PC and Employee
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
Entity Relationship Diagram
Entity Relationship DiagramEntity Relationship Diagram
Entity Relationship Diagram
 
DIACAP IA CONTROLS Requirements Document
DIACAP IA CONTROLS Requirements DocumentDIACAP IA CONTROLS Requirements Document
DIACAP IA CONTROLS Requirements Document
 
Understanding Layering and Ethernet
Understanding Layering and EthernetUnderstanding Layering and Ethernet
Understanding Layering and Ethernet
 
Virtualization and Linux
Virtualization and LinuxVirtualization and Linux
Virtualization and Linux
 
Analysis: New Threats & Countermeasure in Crime and Cyber Terrorism
Analysis: New Threats & Countermeasure in Crime and Cyber TerrorismAnalysis: New Threats & Countermeasure in Crime and Cyber Terrorism
Analysis: New Threats & Countermeasure in Crime and Cyber Terrorism
 
Analysis: Guidelines for Securing WLANS and Networks of ‘Things’
Analysis: Guidelines for Securing WLANS and Networks of ‘Things’Analysis: Guidelines for Securing WLANS and Networks of ‘Things’
Analysis: Guidelines for Securing WLANS and Networks of ‘Things’
 
Cryptography
CryptographyCryptography
Cryptography
 
Networking Task
Networking Task Networking Task
Networking Task
 
Vm Penetration Test
Vm Penetration TestVm Penetration Test
Vm Penetration Test
 
Reverse Engineering Project
Reverse Engineering ProjectReverse Engineering Project
Reverse Engineering Project
 
Team h hoppers group final presentation
Team h   hoppers group final presentationTeam h   hoppers group final presentation
Team h hoppers group final presentation
 

Recently uploaded

Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Jeffrey Haguewood
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
Zilliz
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
Octavian Nadolu
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
GDSC PJATK
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
Dinusha Kumarasiri
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
Tomaz Bratanic
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
flufftailshop
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 

Recently uploaded (20)

Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
Letter and Document Automation for Bonterra Impact Management (fka Social Sol...
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Building Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and MilvusBuilding Production Ready Search Pipelines with Spark and Milvus
Building Production Ready Search Pipelines with Spark and Milvus
 
Artificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopmentArtificial Intelligence for XMLDevelopment
Artificial Intelligence for XMLDevelopment
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!Finale of the Year: Apply for Next One!
Finale of the Year: Apply for Next One!
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Azure API Management to expose backend services securely
Azure API Management to expose backend services securelyAzure API Management to expose backend services securely
Azure API Management to expose backend services securely
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
GraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracyGraphRAG for Life Science to increase LLM accuracy
GraphRAG for Life Science to increase LLM accuracy
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdfNunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
Nunit vs XUnit vs MSTest Differences Between These Unit Testing Frameworks.pdf
 
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 

Understanding TCP and HTTP

  • 1. Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733) Page 1 of 6 INFSYS 3842/6836 Assignment 4 (Lab): Understanding TCP and HTTP using Wireshark Points Possible: 100 Due Date: December 12, 2016 by 11:59pm Central Time IMPORTANT NOTE: THIS LAB MUST BE CARRIED OUT ON YOUR OWNCOMPUTER AND OWN NETWORK. PLEASE DO NOT CAPTURE PACKETS ON A NETWORK THAT YOU DO NOT OWN.YOU’VE BEEN WARNED! Lab Overview:We’ll continueexploring “layersof functionality”providedbydifferentprotocols and understandingsyntax of majorprotocol dataunits. Inthislabwe will focuson TransmissionControl Protocol (TCP) andHyperText TransferProtocol (HTTP) Lab Purpose: 1) To continue learningthe basicsof how touse Wiresharkto capture networktraffic(from students’owncomputersandownnetworks) 2) To learnaboutbasic “Capture Filters” available inWireshark 3) To understandHTTP requestsandresponses 4) Understandthe syntax of TCP segmentheader. Lab Tasks: This labhas twotasks withfourquestionseachfora total of 8 questions. TASK 1: (This task has four questions) In thistaskyou will use Wiresharktocapture basicHTTP trafficand complete the activitiesand questionsasdescribedbelow. STEPS: 1) OpenWiresharkandidentifythe interface youwill capture trafficfrom(WirelessorEthernetLAN) 2) Close all browserwindows and other applications. 3) Opena browserwindowandtype in http://www.umsl.edu/~khanshaj/3842/.DONOT PressEnteryet. 4) Go back to Wiresharkand Start a capture. 5) Go back to the browserwindowandnow hitenterto visitthe page. 6) Once the page loads, close the browser window 7) Returnto Wiresharkand Stop the capture. Save the capture on your computer. Call it “FirstName_LastName_Assignment4_Capture”. 8) Examine the packetscapturedandscroll to find“greencoloredrows”thatdenote “TCP”based traffic.Notice the Three-stephandshakeandthe HTTPrequestsand data responsesfromthe server, acknowledgements,andfourstepclosing. 9) In the filterbox type in“http”to filterall httprelatedpackets.Alsotry“tcp or http”to simultaneouslysee both TCP andHTTP packetsand filteroutthe rest.
  • 2. Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733) Page 2 of 6 LAB Question1: Whenyou requestedthe page atthe http://www.umsl.edu/~khanshaj/3842/ URL, how many requestsdidyour browsersendtothe server? [Tip:Type in“http” inthe filterbox toonly see httprelatedpacketssothat youcan easilycountthe requests] There are 8 packets.There are 4 GET requestsfromthe computertothe serverand4 OK responsesfromthe serverbacktothe computer. LAB Question2: For each of the requests,please provide the a) FILENAMEandFILE Extension,b) aBrief Descriptionof the file beingrequested,c) the type of HTTP Request(get,post,etc.See: http://en.wikipedia.org/wiki/Hypertext_Transfer_Protocol#Request_methods formore informationon differenttypesof HTTPRequestMethods). HTTP 1: GET Request/~khanshaj/3842/HTTP/1.1; index.html (text/html) HTTP 2: GET Request/~khanshaj/3842/style.cssHTTP/1.1;(text/css) HTTP 3: GET Request/~khanshaj/3842/images/umsl_business_is_pngHTTP/1.1 ; (image/png) HTTP 4: GET Request/favicon.icoHTTP/1.1; (image/vnd.microsoft.icon) LAB Question3: How many serverRESPONSESwere receivedbyyourmachine?Examine the response packetscarefullyforeachof the responses.Identifythe followingforeachresponse: a) The HTTP “StatusCode”and itsmeaning a. All 4 responsessaid:HTTP/1.1200 OK whichmeansnoerror infulfilling request b) ContentType a. (text/html),(text/css),(image/png),(image/vnd.microsoft.icon) LAB Question4: Explainclearly,whythe browserhadtomake that manyrequestswhenall youwanted to do wasviewthe page at http://www.umsl.edu/~khanshaj/3842/. Please discussthe role of each “resource” beingrequested(forexample,whywas the “style.css” file requestedetc.). The webpage beingrequestedhadtomake fourdifferentobjectrequestandfourdifferent responsestobe able toobtainthe page. There are fourdifferentmediafilescalled:(text/html), (text/css),(image/png),and(image/vnd.microsoft.icon). TASK 2: (This task has four questions) FINDTHE PACKETthat belongstothe first HTTP REQUEST message (for/~khanshaj/3842/). See picture below.
  • 3. Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733) Page 3 of 6 10) Withthe above GET requestpacket selected(it shouldremainhighlighted),please complete the rest of thislab
  • 4. Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733) Page 4 of 6 LAB Question5: Using the packetassociatedwiththe GET requestasmentionedabove,pleasecomplete the followingfieldsinthe TCPsegment headerbelow.The ideahere istolearnaboutthe differentfieldsandwhattheyaccomplish. NOTE:Althoughthe fieldvaluesare alwaysinbinary (as seeninthe bottommostsectionof yourcapture) please feel freetoprovide the valuesastheyappearinthe MIDDLE part (i.e.eitherdecimal or hex as the case maybe). Type inyourvaluesinthe “Grey”shadedareasimmediatelybeloweachfield. [Hint: please visithttp://en.wikipedia.org/wiki/Transmission_Control_Protocol tolearn more about TCP and lookfor the section“Segment Structure” to betterunderstand what each of the fieldsbelowmean] TCP Header OffsetOctet 0 1 2 3 Octet Bit 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 0 0 Source Port Number Destination Port Number 61957 80 4 32 Sequence Number (relative sequence number is fine) 1965 8 64 Acknowledgement Number (if ACK bit is set) (relative ACK number is fine) 19560 12 96 Data offset Reserved NS CWR ECE URG ACK PSH RST SYN FIN Window Size 0 0 0 12 96 32 bytes 0 0 0 0 1 1 0 0 0 61 16 128 Checksum Urgent pointer (if URG is set) 0x67c1 0 20 … 160 … Options (if Data offset value is > 5) … (options could be up to 40 bytes, making the TCP header anywhere from 20 bytes minimum to 60 bytes maximum) [Note: TCP header padding is used to ensure that the TCP header ends and data begins on a 32 bit boundary. The padding is composed of zeros.)
  • 5. Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733) Page 5 of 6 LAB Question6: For each of the TCP segmentheaderfieldsyoucompletedabove,please briefly describe itspurpose/meaning. Whenpossible,pleaseanswerthisquestionbothingeneralaswell asin particularto the segmentyouare currentlyexamining. Forexample, destinationportspecifies the receiving portwhich in the currentpacketis port80. Since this is a GET request,it is sent to port80 on the serverside which is the well-known portserversuseforlistening to HTTP traffic) [Hint:A goodreadingof the above linkand understandingthe segmentstructure willhelpwith thistask.The answersare givenonthe linkabove buttry to actuallyunderstandwhateachfield does] Source Port Number: this is the assigned number that identifies the sending port Destination Port Number: this is the assigned number that identifies the destination port Sequence Number: This is 32 bits and has a dual role- if SYN flag is set (1) then this is the initial sequence number. Sequence number of the actual first data byte and the acknowledged number in the corresponding ACK are then this same sequence plus 1. - if the SYN flag is clear (0) then this is the accumulated sequence number of the first data byte of the segment for the current session. Acknowledgement Number: This is 32 bits and if ACK is flagged then the value of the field is the next sequence number of the first data byte of this segment that the sender is expecting. If there are any bytes this recognizes (or acknowledges) the receipt of all prior bytes. The first ACK sent by each end does acknowledge the other ends initial sequence number itself but no data is there. Data offset: This is 4 bits and does specify the size of the TCP header in 32-bit words. Minimum size header is 5 words and the maximum is 15 words thus giving 20 bytes minimum to 60-bytes maximum allowing for up to 40 bytes of options in the header. This field is also the offset from the start of the TCP segment to the actual data. NS: A 1-bit flag that is the ECN-nonce concealment protection. CWR: A 1-bit flag known as Congestion Window Reduced which is set by sending the host to indicate that it received a TCP segment with the ECE flag set and had responded in congestion control mechanism. This is added to header by RFC 3168. ECE: A 1-bit flag that is the ECN-Echo which has a dual role depending on the value of SYN flag. It indicates -if the flag is set to 1 that the TCP peer is ECN capable, -if the flag is set to 0 (clear) that a packet with congestion experienced flag set (ECN = 11) in IP Header received during normal transmission which is added to the header by RFC 3168. Does serve as an indication of network congestion to the TCP sender. URG: A 1-bit field which indicates that the urgent pointer field is significant. ACK: A 1-bit field that indicates that the acknowledgement field is significant which means that all packets after the initial SYN packet sent by the client should have this flag set. PSH: A 1-bit field which is a Push Function. This asks to push the buffered data to the receiving application. RST: A 1-bit field which resets the connection. SYN: A 1-bit field which synchronizes the sequence numbers. Only the first packet sent from each end should have the flag set. Some other flags and fields change meaning based on this flag and some are only valid for when it is set and others when it is clear. FIN: A 1-bit field which has no more data from the sender. Window Size: This is a 16-bit field which is the size of the receive window, which specifies the number of the window size units (which by default is in bytes) (also beyond the segment identified by the sequence number in the acknowledgement field) that the sender of the segment is willing to receive at the current time. Checksum: This is a 16-bit field which is used for checking errors of the header and data.
  • 6. Instructor:Dr. Shaji Khan(shajikhan@umsl.eduor314-489-9733) Page 6 of 6 Urgent Pointer: This is a 16-bit field. When this flag is set then the field is an offset from the sequence number indicating the last urgent data byte. LAB Question7: What is the minimumsize of the TCPsegmentheaderinbytes?Whatisthe maximum size? Minimumsize is20 bytesandmaximumsize 60 bytes. LAB Question8: Giventhe above isthe TCPsegment’s header 1) Where do youthinkisthe data(payload) of thissegmentlocated (i.e.doesitprecedeorfollowthe header)? The data section(payload) followsthe header. 2) What wouldconstitute the data portionof thisTCPsegment? (Be specificinyouranswerbasedon thisparticularsegment) [Hint:thisanswerwill be easierif youreadthe sectiononTCP Segment Structure of the Wikipedialinkabove andalsounderstandhow HTTPusesTCP] TCP acceptsdata from a data streamand dividesitintochunkswhichaddsthe TCPheader creatingthe TCP segment.The segmentisthenencapsulatedintoanIPdatagram and exchangedwithpeers. Therefore,the datastreamconstitutesthe dataportionof the TCP segment. LAB DELIVERABLES (to be uploadedto MyGateway): 1) UploadcompletedWorddocument 2) Uploadthe Wiresharkcapture file GETTING HELP: 1) Call (314-489-9733) / email (shajikhan@umsl.edu)me anytime.Feelfree towalk-intomyoffice if you see me there orsetupappointment.Tutorsare alsoavailable (see MyGateway/Faculty Informationforhours,orsimplywalkintocybersecuritylab,ESH204 duringlabhours). 2) Of course try to helpeachotherout.If some studentsare alreadyfamiliarwiththe taskslisted above,Iencourage youto helpothers.“Teaching”andhelpingothersisbyfarthe bestway to learn!