Computer Networks

  1. Network Protocols
    1. OSI Model
      1. Layer 1: Physical Layer
        1. Functionality
          1. Transmission of raw bit streams over a physical medium
            1. Bit synchronization
            2. Components
              1. Cables (Coaxial, Fiber Optic, Twisted Pair)
                1. Connectors
                  1. Network Interface Cards
                    1. Hubs and Repeaters
                  2. Layer 3: Network Layer
                    1. Functionality
                      1. Routing and forwarding of packets
                        1. Logical addressing
                          1. Traffic control
                          2. Protocols
                            1. Internet Protocol (IP)
                              1. IPv4
                                1. IPv6
                                2. Internet Control Message Protocol (ICMP)
                                  1. Routing protocols (OSPF, BGP, RIP)
                                3. Layer 4: Transport Layer
                                  1. Functionality
                                    1. Provides reliable or unreliable delivery
                                      1. End-to-end communication
                                        1. Flow control
                                          1. Error correction
                                          2. Protocols
                                            1. Transmission Control Protocol (TCP)
                                              1. User Datagram Protocol (UDP)
                                              2. Transmission Techniques
                                                1. Connection-oriented communication
                                                  1. Connectionless communication
                                                2. Layer 5: Session Layer
                                                  1. Functionality
                                                    1. Establishes, manages, and terminates sessions
                                                      1. Synchronization
                                                        1. Dialog control
                                                        2. Real-World Applications
                                                          1. Session Management in APIs
                                                            1. Remote Procedure Calls (RPC)
                                                          2. Layer 6: Presentation Layer
                                                            1. Functionality
                                                              1. Data translation and code formatting
                                                                1. Data encryption and decryption
                                                                  1. Compression and decompression
                                                                  2. Data Formats
                                                                    1. JPEG, GIF, and other image formats
                                                                      1. ASCII, EBCDIC and character encoding formats
                                                                      2. Services
                                                                        1. Encryption services (SSL/TLS)
                                                                      3. Layer 7: Application Layer
                                                                        1. Functionality
                                                                          1. Provides interface for the end user
                                                                            1. Process-to-process communication
                                                                            2. Protocols
                                                                              1. Hypertext Transfer Protocol (HTTP/HTTPS)
                                                                                1. Simple Mail Transfer Protocol (SMTP)
                                                                                  1. Domain Name System (DNS)
                                                                                    1. File Transfer Protocol (FTP)
                                                                                2. TCP/IP Model
                                                                                  1. Internet Protocol (IP)
                                                                                    1. Addressing
                                                                                      1. IPv4 Addressing Scheme
                                                                                        1. IPv6 Enhancements and Benefits
                                                                                        2. Routing
                                                                                          1. Static vs. Dynamic Routing
                                                                                          2. Fragmentation
                                                                                          3. Transmission Control Protocol (TCP)
                                                                                            1. Handshake Processes
                                                                                              1. Three-way handshake
                                                                                              2. Reliability
                                                                                                1. Sequencing and Acknowledgments
                                                                                                2. Flow Control and Congestion Avoidance
                                                                                                3. User Datagram Protocol (UDP)
                                                                                                  1. Characteristics
                                                                                                    1. Connectionless Communication
                                                                                                      1. No error recovery
                                                                                                      2. Use Cases
                                                                                                        1. Real-time Applications (VoIP, Streaming)
                                                                                                    2. Application Layer Protocols
                                                                                                      1. Hypertext Transfer Protocol (HTTP/HTTPS)
                                                                                                        1. Methods
                                                                                                          1. GET, POST, PUT, DELETE
                                                                                                          2. Security Enhancements
                                                                                                            1. Secure HTTP (HTTPS)
                                                                                                          3. File Transfer Protocol (FTP)
                                                                                                            1. Modes of Operation
                                                                                                              1. Active vs. Passive
                                                                                                              2. Security Concerns
                                                                                                                1. FTPS and SFTP
                                                                                                              3. Simple Mail Transfer Protocol (SMTP)
                                                                                                                1. Email Delivery Process
                                                                                                                  1. Security Considerations
                                                                                                                    1. SMTP over SSL
                                                                                                                  2. Domain Name System (DNS)
                                                                                                                    1. Name Resolution Process
                                                                                                                      1. DNS Security Extensions (DNSSEC)
                                                                                                                    2. Role and Importance of Network Protocols
                                                                                                                      1. Interoperability
                                                                                                                        1. Standardization of communication
                                                                                                                        2. Efficiency
                                                                                                                          1. Management and optimization of the network traffic
                                                                                                                          2. Scalability
                                                                                                                            1. Protocols supporting network growth
                                                                                                                            2. Security
                                                                                                                              1. Protocols enabling secure data exchanges
                                                                                                                            3. Emerging Protocols and Innovations
                                                                                                                              1. Multiprotocol Label Switching (MPLS)
                                                                                                                                1. Traffic Engineering
                                                                                                                                  1. Reduced Network Congestion
                                                                                                                                  2. Software-Defined Networking (SDN) Protocols
                                                                                                                                    1. OpenFlow
                                                                                                                                      1. Network Virtualization
                                                                                                                                      2. Internet of Things (IoT) Protocols
                                                                                                                                        1. MQTT
                                                                                                                                          1. CoAP
                                                                                                                                          2. Encrypted Protocols
                                                                                                                                            1. QUIC
                                                                                                                                              1. DTLS (Datagram Transport Layer Security)