Mapa mental
Networks
Conteúdo do mapa
Networks
·
- Network Stack
- 1. Layers can be easily swapped and updated 2. Layers provide services to above 3. Layers allow programs to operate over different networks without updates 4. Travelling down the stack gets you closer to the wire
- OSI
- Presentation
- Presentation Layer
- Was intended to handle data encoding E.g. Converting data into a neutral format Pointless layer
- Session
- Session Layer
- .Was intended to handle the relation between multiple connections. E.g. Restoring a failed transfer.
- Tried to be too general, different applications have different requirements
- Presentation
- TCP/IP (DoD)
- TCP/IP (DoD) 1. Was based on successful implementations 2. Only 1 network Layer
- Application
- Network
- 1. Moves data between endpoints 2. Separates data between different applications using ports 3. Breaks data into segments 4. Guarantees reliable and sequenced data to the application 5. Uses TCP for streams and UDP for packets 6. Segments are units of data in the Transport Layer
- TCP
- Connections are distinguished by the source and destination ports and IP Flow Control - Receiver controls the speed, Stops it from being overwhelmed
- Packet
- Packet
- Duplicate packets can be caused by ACK/NAK packets being lost
- Usually 40 bytes Sequence Number - Identify packets uniquely Acknowledgement number - Byte number of next packet in stream. Says how far you are in stream. Data Offset - Says where data begins in packet Window Size - How much data you can buffer. Data is sent until unack'd packets equal the WS Checksum - Used to make sure packet has no errors
- Control Flags A - ACK Packet P - Push data up to application layer R - Reset Packet - Error has occured, close connection SYN - Used to establish a connection FIN - Used to Tear down a connection
- Silly Window Syndrome
- If an application is reading data from the network slowly (1 byte at a time), the window can quickly become full. When data is read in from the window and a byte is available, the space will be advertised causing the sender to send 1 byte packets at a time.
- To avoid this, receivers only advertise when atleast half their buffer is available or 1 segment size (1500bytes)
- Nagle Algorithm
- Nagles Algorithm - Prevents sender sending data where there are unack'd packets
- if there is new data to send if the window size >= MSS and available data is >= MSS send complete MSS segment now else if there is unconfirmed data still in the pipe enqueue data in the buffer until an acknowledge is received else send data immediately end if end if end if
- ACK Packet
- Packet was successfully received
- SYN Packet
- Used to set up the connection
- NAK Packet
- Packet received had errors
- Pipelining
- Send several packets before ACKs are received
- Go Back N
- Go Back N
- 1. Uses cumulative acknowledgement 2. Only sends ACKs for most recent complete sequence E.g. receiving 1,2,4 will ACK 1, 2, 2 3. All packets since the last ack will be resent E.g. 3 and 4 will be resent 4. ACKs can be delayed incase other packets are close. If 1,2 and 3 are received. ACKs 1 and 2 can be delayed so that only 3 is ACK'd 5. Out of order packets can be discarded since they'll be resent anyway
- Selective Repeat
- 1. ACKs individual packets 2. packets must be buffered since they wont be resent 3. Window base only moves when packet smallest packet has been received
- Selective Acknowledgement
- SACK allows the receiver to acknowledge ranges of received packets rather than the cumulative acknowledgement
- Multiple packet losses from a window of data can have a catastrophic effect on TCP throughput. TCP uses a cumulative acknowledgment scheme in which received segments that are not at the left edge of the receive window are not acknowledged. This forces the sender to either wait a roundtrip time to find out about each lost packet, or to unnecessarily retransmit segments which have been correctly received. With the cumulative acknowledgment scheme, multiple dropped segments generally cause TCP to lose its ACK-based clock, reducing overall throughput. Selective Acknowledgment (SACK) is a strategy which corrects this behavior in the face of multiple dropped segments. With selective acknowledgments, the data receiver can inform the sender about all segments that have arrived successfully, so the sender need retransmit only the segments that have actually been lost.
- Window Scaling
- If supported, the window scale is included in the SYN packets by BOTH end points. Every window size in the following packets will be multiplied with the window scaling factor by the receiver to get the true window size available.
- PAWS - Protection Against Wrapped Sequence numbers
- Due to window scaling and high internet speeds, its possible for sequence numbers to be wrapped around and reused. This could cause new packets to be dropped because the receiver thinks its a duplicate. PAWS uses both the timestamp and sequence number to determine whether a packet is new or a duplicate.
- RTTM - Round trip time management
- Easy to determine the round trip time of a connection using the timestamps included
- Rapid Recovery
- To prevent a connection going back into slow start, rapid recovery uses duplicate acks to infer that packets have been lost and resends them before timeout
- Slow Start
- Due to LANs being faster than WAN and the sender not knowing its own congestion window The sender could send data faster than a router can send out leading to packets being lost. To stop this a small number of packets are sent at a time and this number slowly increases
- Assumes that unack'd packets are due to congestion. Could lead to performance issues where bad connections are causing packet loss
- Multipath TCP
- Allows multiple paths to be used for one connection e.g 4G + WIFI. Multipath TCP can be done with multiple network cards During 3 way handshake, packets are sent with MP_CAPABLE flags. The second path is constructed using MP_JOIN
- The connection is multiplexed so that packets are sent over both links. A link being lost will look like bad packet loss, this will cause the connection to need to be reconfigured, usually by recreating the connection with only 1 link. Usually used in video streaming.
- UDP
- Others
- DCCP
- Tried time sensitive packet delivery. UDP with congestion control Intended for streaming media
- SCTP
- Used for voice tunneling over the internet. E.g. Phone connection over the internet. Reliable and allowed multiple streams of data
- RTP
- RTP
- Used to transport voice and video Had problems getting consistent timing between audio (SIP) and video (RTCP) Packets had a sequence number to reorder packets and sport gapsTimestamp was also used for ordering packets and to find out how long a packet had been delayed
- Differences with TCP 1. Receiver knows when a packet was sent and how many 2. No acknowledgements 3. Receiver could decide between dropping delayed packets or waiting for them 4. Detected duplicates
- RTCP
- Used to set up video replay
- SIP
- Used to set up voice over IP telephony. Audio
- DCCP
- Link
- Physical
Hardware
- Switches
- Hubs
- Bridges
- Dumb
- Filter/Learning
- Routers
- Host
- Planes
- Management
- Control
- Data
- Switches
Data Transfer
- Data Transfer
- Packet Switching
- Packet Switching
- 1. Data is divided into segments, each with source/destination addresses 2. Segments are switched over networks 3. Multiplexes over time domain
- Virtual Circuit
- Virtual Circuit - 5
- 1. Endpoint tells network to establish connection 2. Network decides on a route to connect the endpoints 3. Network gives endpoints a token to identify the circuit 4. Packets are sent with token to identify the Circuit 5. Virtual Circuit town down
- Advantages - 4
- 1. Ordered Packets - Packets follow same route hence arrive in order 2. Reliable - Network handles packet loss/duplication 3. Less overhead - packets do not need full address 4. Network stack simplified
- Disadvantages - 2
- 1. Networks must keep track or connections crossing it 2. Complex routers - Scale with bandwidth, number of circuits and rate of creation/destruction
- Datagram Services
- Datagram service
- 1. Packets are processed individually 2. Endpoints handle packet loss, duplication and reordered 3. Packets unlikely to follow same route 4. Connectionless - Packets can be sent without prior arrangement 5. Best effort - Attempts to deliver with no guarantees 6. Can use a virtual circuit as a link
- ln
- Disadvantage - 1
- Packets can get lost, reordered or duplicated
- Advantages
- 4 Advantages
- 1. Easy to multiplex over time domain 2. Data is not being sent when connection is not in use 3. Statistical gain due to being able to serve more customers 4. Can reroute data around failed switches
- Disadvantages
- 3 Disadvantages
- 1. Packets can be lost or reordered 2. Introduces latency 3. Packets must be stuck back together
- Circuit Switching
- Circuit Switching
- 1. A dedicated communications channel is created. 2. Multiplexes over frequency domain
- Was used for telephones 1. Circuit was created through exchanging and linking wires 2. Electrical signals sent using multi-plexors and amps
- Disadvantages
- 3 Disadvantages
- 1. Dedicated channel means resources being consumed even when not in continuous use. E.g. When no one is talking during a call. 2. Expensive 3. Hard to filter over frequency domain
- Advantages
- 1 Advantange
- Less latency
Types
- LAN
- WAN
- MAN
Imagens e arquivos do mapa
Informações
- Descrição
- Mapa Mental sobre Networks, criado por Daniel Annan em 11-12-2017.
- Criado por
- Daniel Annan
- Visualizações
- 1
- Avaliação



































