1 / 28

Chapter 7: The Infamous IP

Chapter 7: The Infamous IP. Agenda: Cover Chapter 7 – IP Roll out Final Project Review Exam 1. Position of IP in TCP/IP protocol suite. Packets in the IP layer are called datagrams IP is an unreliable and connectionless datagram protocol To make IP reliable, TCP protocol is added.

abril
Télécharger la présentation

Chapter 7: The Infamous IP

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Chapter 7: The Infamous IP Agenda: Cover Chapter 7 – IP Roll out Final Project Review Exam 1 Lecture

  2. Position of IP in TCP/IP protocol suite • Packets in the IP layer are called datagrams • IP is an unreliable and connectionless datagram protocol • To make IP reliable, TCP protocol is added Lecture

  3. IP datagram • IP datagram is variable length consisting of two parts (header, data) • Header is 20-60 bytes & contains routing and deliver info • Ver – version of IP • HLEN – header length – total length of the header field (in 4-byte words or units) • Service type – now called Differentiated Services – tells the service type (ie. ftp, dns, telnet, etc..) – will come back to this • Total length – defines the total length of the datagram including the header – need this to determine if padding is needed – recall Ethernet frame can range 46-1500 bytes – so if the IP datagram is less than 46 bytes (need padding) • Identification – used for fragmentation – networks that are not able to encapsulate the full IP datagram will need to fragment – will come back to this • Flags – used for fragmentation – will come back to this • Fragmentation offset – used for fragmentation – will come back to • Time to live – datagram life time as it travels – used to control the number of hops (routers) a datagram can traverse – fix infinite loop problems • Protocol – defines the higher level protocol (ie. TCP, UDP, ICMP, ICMP, etc..) that’s using the service of the IP layer – since the IP Muxes data from the Transport layer – this field is used to demux Lecture

  4. IP datagram Header cont… • Header Checksum – error checking (will cover later) • Source Address – IP address of the source (remain unchanged as data traverses) • Destination Address - IP address of the destination (remain unchanged as data traverses) • Option – are not required for every datagram – used for network testing and debugging – will cover in more detail later Lecture

  5. FRAGMENTATION • Recall we stated that networks that are not able to encapsulate the full IP datagram will need to fragment • As the datagrams travel through the network hitting various Routers – • the router “decapsulates” the IP datagram from the frame • The router then processes it • Then the router encapsulates it in another frame • This is how routers are able to communicate with various networks Router 1 Router 2 Network 1 Network 2 Network 3 Lecture

  6. MTU Each Data Link Protocol has it own frame format – one field defines the max size of the data field – when datagram is encapsulated, the total size of the datagram must not exceed that max size (why ??? - HW/SW limitations of the physical network) That value is called a MTU (maximum transfer unit) • The largest possible MTU is 65,535 and if this is used – it makes the IP protocol independent of the underlying physical network • If any other MTU is used, there will be cases possibly where the datagram needs to be fragmented in order to pass through that network • As it passes through the network, a previous fragment can be fragmented again if that physical network has a smaller MTU Lecture

  7. Flag field • Fields related to the fragmentation are the ID field, flags field and fragmentation offset field • Id – combo of the Id and source Ip address (IP protocol used a counter to label datagram) • Flags: 1st reserved, if D set, can’t fragment (must drop if can’t pass), if D=0, can fragment. If M is set, means more fragments exist • Fragment offset – shows relative position of the fragment with respect to the whole datagram Lecture

  8. Fragmentation example • Take a datagram of original size 4000 bytes (byte 0 to 3999) and fragment it into 3 fragments • The fragment offset is measured in units of 8 bytes. So the first offset would be 0/8=0 since the starting byte position is 0 • The second starting byte position is 1400 and therefore the offset is 1400/8= 175 • The third starting byte position is 2800 and therefore the offset equals 2800/8=350 This is done to ensure the offset can fit in the 13-bit field Routers/Hosts that fragment must pick a size of each fragment so that the 1st byte is divisible by 8 (ie. 0, 8, 16, 24 ……696 …… 1400 …….. 2096 ……… 2800 … etc) Lecture

  9. Detailed example Total Length Id isn’t changing Allow “more” fragmentation XDM D=1, can’t frag D=0, can frag M=1, more frag exist M=0, no more frag exist offset Lecture

  10. Re-assembly • Even if the fragments arrived to the destination out-of-order, the destination host could reassemble by: • The 1st fragment always has an offset of zero • If the 1st fragment’s length is divided by 8, it equals to the 2nd fragment’s offset • If the 1st and 2nd fragments’ total length are divided by 8, it equals to the 3rd fragment’s offset • Continue … • The last fragment’s “more” bit should be set to 0 – meaning no more fragments remaining Lecture

  11. Recall - IP datagram • IP datagram is variable length consisting of two parts (header, data) • Header is 20-60 bytes & contains routing and deliver info • Haven’t covered options yet • Option – are not required for every datagram – used for network testing and debugging – will cover in more detail later Lecture

  12. Option format Composed of a 1-byte code field, a 1-byte length field and a variable-sized data field Length field defines the total length of the option (including the code field) Data field contains the data of the specific option – some option types don’t require data Code field is 8-bits long and contains 3 subfields: copy, class and number Copy: controls presence of option. If 0, means copy options to the first fragment only; if 1, means copy option to all fragments Class: defines general purpose of options. If 00, options is used for datagram control; if 10, options used for management and debugging. Number: defines the type of option. As of now, only 6 types defined Lecture

  13. Regarding the Number field • Number: defines the type of option. As of now, only 6 types defined • 2 of the option types are 1-byte in size (doesn’t need length and data fields) • 4 of the options are multiple-byte and require the length and data fields • Used as a filler between options (using a 16-bit or 32-bit boundary) – know the starting point of the next option • Used at the end of the last option for padding • Record the Internet routers that can handle the datagram ( can list up to 9 router IP addresses) • Used by the source to predetermine a route for a datagram as it traverses • Used by the source to predetermine a route too (but more relaxed than the Strict Source Route Option) • Record the time the datagram is processed by a router Lecture

  14. Regarding the Record route option • The Tx creates a placeholder for the visited routers to fill in their IP addresses • The pointer field is used to point to the first empty entry so the router knows where to enter it’s outgoing IP address (address the datagram is leaving) Lecture

  15. Record route concept Can have only 3 IP addresses because of 12+3=15 Outgoing IP address Pointer field value of 4 when starting out Increment pointer Lecture

  16. Regarding the Strict source route option • Option used by the source to predetermine a route for the datagram as it traverses the Internet • In this case, the routers are specified up front in dictating the specific route. All routers MUST be visited – if other routers are visited, the datagram is dropped) – if all of the listed routers are not visited, the datagram is dropped • Routers are entered by the sender Why: security, distinguish among different networks, don’t want certain traffic to leave your network, etc. Lecture

  17. Loose source route option • Similar to the Strict Source Route Option but more relaxed • In this case, the routers are specified up front and all MUST be visited ( however, other routers can be visited too) Lecture

  18. Timestamp option • Used to record the time of datagram processing by a router (expressed in milliseconds from midnight) • Use this to track the routers’ behavior – time from one router to the next • O-flow: # of routers that could not add their timestamp • Flags: dictates what the router should do (ie. add timestamp, add timestamp & IP address, etc..) Lecture

  19. CHECKSUM • The error detection method used by most TCP/IP protocols is called checksum • The checksum protects against bit corruption that could possibly occur during transmission • Checksum calculated at the Tx and is appended with the sent data • The Rx repeats the calculation in determining if the data is correct or not Give them an analogy in base-10 Lecture

  20. To create the checksum the sender does the following: • 1. The packet is divided into k sections, each of n bits (usually 16) • 2. All sections are added together using one’s complement arithmetic. • 3. The final result is complemented to make the checksum. • Checksum process at the receiver is as follows: • The received packet is divided into k sections • All sections are added together • 3. The final result is complemented and should equal zero if correct • NOTE: value + (-value) = 0 Lecture

  21. When to apply the checksum • For IP datagram, Checksum is used on the header only (and not the data) • The header needs to be check because it’s changing router-to-router (the data itself is static) • Recall that the higher-level protocols encapsulate data into the datagram and uses their own checksum Lecture

  22. Recall Binary Addition • 1010 (neg 5) • +0010 (pos 2) • 1100 (neg 3) • 1101 (neg 2) • +0111 (pos 7) • 10100 (overflow – add the 1 back) • 0101 (pos 5) • Recall complement • 0011 Lecture

  23. Each Router has an IP address which associates with the packet-switch side of the network (Internet) The ATM side of the router uses its own 20-byte physical ATM address And in guiding the cells across the ATM network, Virtual Circuit Identifiers are used ROUTING IP OVER ATM The IP packet is encapsulated in cells (not just one). An ATM network has its own definition for the physical address of a device. Binding between an IP address and a physical address is attained through a protocol called ATMARP. In a LAN case, broadcasting is used by ARP – in a ATM case, broadcasting can’t be used – another approach is needed - ATMARP Lecture

  24. CS4500 Final Project • Objective: Research & Teach A “CS4500 Related “ Subject at a high-level using existing knowledge • Teams will teach the class about a specific “high-level” topic relating to topics covered in CS4500 – no paper required – only power point slides required – you can scan images • Due July 16th by 5pm – email hyperlink to download slide presentation (will put on website) – docked 20% per day/late • Team Meeting Outside of Classroom – July 10th at 530pm after exam review – Teams decide the location of the meeting (outside of the classroom) • Presentations will occur on July 17th (odd-numbered teams 5pm-6pm – teams 1, 3 and 5) and (even-numbered teams 645pm-745pm – teams 2, 4 and 6) – will need to clear out the room after the first set of presenters at 6pm and lock the door - the second set of presenters will show up at 645pm - no teams will have to sit through 2 hours and 30 minutes of presentations • 15 - minute lecture • All team members must present • Docked for going over or below time limit of 15 minutes • Graded on (1) lecture clarity, flow and thoroughness (65%), (2) slide quality (15%), and (3) perceived team work (20%) • Your presentation should flow as one lecture and not disjointed (can’t divide the subject – everyone must understand the entire subject – if not, will lose points on questions and flow) • Slides sent on July 16th will be posted on your website – no need to bring slides – can not change slides after July 16th (5 pm) – can only use the slides posted on the website • You should list the various sources you referenced in your lecture • Team members are responsible for researching (and learning) together and organizing the lecture as a team – teamwork – I can sense teamwork or not before and during the presentation • The Presentation topics will not be covered on any exam • Team numbers don’t indicate presentation order. • NOTE: it takes approximately 8 to 12 power point slides to conduct a 15 minute talk – your team is responsible for making sure the talk is timed for 15 minutes • Words of advice: (1) don’t wait until the last minute to get started and (2) if you have problems with a team mate, let me know ASAP – don’t wait 1 or 2 weeks before the presentation (or the day of the presentation) – if so, it’s too late to take action

  25. Topics • Team 1 – Network Security • Team 2 – Cloud Computing • Team 3 – VLAN • Team 4 – Drones • Team 5 – SAN • Team 6 – VoIP NOTE 1: You are responsible for contacting your team members via email initially NOTE 2: Will lose points if you use Wikipedia (non-credible source) Team Meetings on July 10th at 5:30pm– teams decide the location Odd-numbered teams present July 17th 5pm-6pm Even-numbered teams present July 17th 645pm-745pm

  26. Teams 1-3 of 6 Team Meetings on July 10th at 5:30pm– teams decide the location Odd-numbered teams present July 17th 5pm-6pm (Teams 1, 3 and 5) Even-numbered teams present July 17th 645pm-745pm (Teams 2, 4 and 6)

  27. Teams 4-6 of 6 Team Meetings on July 10th at 5:30pm– teams decide the location Odd-numbered teams present July 17th 5pm-6pm Even-numbered teams present July 17th 645pm-745pm

  28. CS4500 Exam 1 Results • Average Score = 39 (Average Grade = 75) • Score SD = 12 Grading Scaled Used: • 69-58 A-grade (1 student) • 57-46 B-grade (4 students) • 45-34 C-grade (7 students) • 33-22 D-grade (3 students) • 21-10 F-grade (2 students) In getting your grade logged, be sure and pass back the exam after we go over them

More Related