Scenario:
The end-to-end principle is a network design method in which application-specific features are kept at communication end points. So not to have features on intermediate points between the client and end points, like gateways and routers. E.g. Net neutrality.
- i/p -> tcp i/p -> HTTP.
- HTTP 1.0 [1993/4]
- CERN
- For researchers [university] to shared papers [text and some images].
- HTTP 1.1
- Syntax & Semantics separated
- Syntax - Network/format/what goes over the wire
- Semantics - Headers, Response Codes & Methods [POST/GET etc.]
- Keep Alive
- No TLS mandate
- HTTP 2.0
- Web 2.0
- Initial Window - TCP [2 packets] and add more as you get ACK, took to 7 packets.
- Parallel/Multiplexing - Adding streams to one connection. Earlier browser multiple connections to same site and limit of 6.
- Ahead of Line blocking - TCP layer:
- If 3 packet or resource in queue you cant send 4.
- TCP - guaranteed and in sequence
- FTP is fine. If one line is missing. Packets sent fast. Ack tells missing and resend again only at the end its blocked/stopped and not render.
- As Initial Window grew, there are more things in queue, more blockages.
- It may not be needed, one frame in video, scrolled now section.
- 2.0 solved resource blocking, it can come out of sequence, but within resource Ahead of Line Packets.
- Google Chrome - Google Servers.
- Middle Boxes like ISP they block traffic [ingress/egress to the network]. They only allowed Tcp to go out, so you cant add protocol on top.
- HTTP 3.0
- Use UDP to Tcp
- UDP
- Is Connection less.
- UDP before TCP
- UDP has limited services and so you have to build.
- Might get blocked in hospital, banks..
- TCP
- 3 way handshake - TCP uses a three-way handshake, both sides synchronize (SYN) and acknowledge (ACK) each other; SYN, SYN-ACK and ACK.
- 4 way handshake FIN -> ACK -> ACK.
- If does not work fall back to http2 due to UDP blockage.
- QUIC
- 99.999 % web is on TLS, due to free certs
- Traffic shaping - Manage bandwidth to delay the flow of certain types of network packets to ensure network performance for higher priority apps, e.g. DataCenters.
- IPv6 - address consists of eight groups of four hexadecimal digits.
- IPv4 - 32 bit, so 2^32 = 4 Billion
- IPv6 - 128 bit = Quandralion
- Network address translation (NAT) - Conserves IP addresses by enabling private IP networks using unregistered IP addresses to go online.
- Reclamation of unused IPv4 space. Under TCP, there are 1–65535 ports
- Zero RTT
- 4 way for 1st
- Next time - Use same key, after challenge, based on 1st call.
- Connection migration w/o connection re negotiation from wifi to cellular
- Web RTC
- UDP
- Peer to Peer
- Initial Server then p2p
- RTMP - Real-Time Messaging Protocol
- Earlier browser was just write file, not read. Devices read like mic and camera.
- Codec
- Compress/ Decompress audio-video
- Web 1.0
- Mostly static pages connected by hyperlinks
- HTML forms get sent through e-mail
- The content comes from the server's filesystem, not DB
- Encyclopedia available online
- Linked Web Pages
- Web 2.0
- Read
- Write
- Dynamic
- Wikipedia
- Linked Apps
- Web 3.0
- Personal
- Block chain
- Semantic Web/Chat GPT
- Linked Data