Instructor: Dr. Abdullah Aydeger
Course Code: CSE 5231
Location: L3Harris Center for Science and Engineering #326
Email: aaydeger@fit.edu
Affiliation: Department of Electrical Engineering and Computer Science
Introduction to Computer Networks
Network Protocol
Layers
Definition: A computer network connects two or more computing devices.
Examples of Devices: Computers, phones, IoT devices.
Terminology: Each device is referred to as a "node" and the connection between them is called a "link."
The Internet is a well-known computer network, accessed through various applications:
World Wide Web (WWW)
Streaming (Audio/Video)
File Sharing
Instant Messaging
Types of Links:
Point-to-Point Link: Direct connection between two nodes.
Multiple Access Link: A shared connection allowing several devices to communicate.
Internetwork: A larger network composed of smaller networks.
The Internet: Comprises all interconnected networks globally.
Definition: A communication protocol is a set of rules that enables two or more entities to communicate over a network.
Components of Protocols:
Rules
Syntax
Semantics
Synchronization
Error recovery methods
Responsibilities of Protocols:
Message format
Message order
Action guidelines
Operates on multiple nodes and utilizes packet headers for functionality.
Challenges include managing billions of devices, ensuring communication and maintenance.
Solution: Divide functionality and responsibilities among protocols and networks.
Layering abstracts and organizes network functionalities without detailing implementations.
Benefits of Layering:
Facilitates system maintenance
Enhances scalability
Protocol Stack: Layers handle specific tasks within network communication.
Overview: Utilizes a layered architecture to manage network communications:
Each layer has specific functionalities and builds upon lower layers.
Functionality: Each layer communicates with the layers above and below it and exchanges messages with peer layers across nodes.
Physical Layer: Manages raw bits transmission over links.
Data Link Layer: Collects bits into frames for transmission.
Network Layer: Responsible for routing within packet-switched networks.
Transport Layer: Ensures data transfer from end-user to end-user.
Session Layer: Manages sessions communicating multiple transport streams.
Presentation Layer: Addresses data format issues between communicating peers.
Application Layer: Standardizes common exchanges for user applications.
Application Layer: Deals with user-facing applications.
Transport Layer: Handles end-to-end data transfer.
Internet Layer: Responsible for data routing.
Link (Physical Layer): Concerned with the physical media for data transfer.
Connections: Connects multiple networks.
Forwarding/ Routing: Moves data from one network port to another and decides the optimal route.
Internet Protocol: Defines IP addresses (IPv4 and IPv6).
Provides essential functionalities alongside the forwarding tasks managed by the lower layers.
Defines message types, syntax, and semantics for inter-device communication.
Open Protocols: Defined in RFCs (e.g., HTTP) for compatibility.
Proprietary Protocols: Exclusively defined protocols like Zoom or Skype.
Steps involved in the FTP connection process include establishing initial connections, sending credentials, and confirming connection readiness.
Process: Data generated at application level, encapsulated by layer headers (Transport Layer: TCP/UDP, Internet Layer: IP, Link Layer: MAC details).
Network Scale: Focus areas include PAN, LAN, MAN, WAN, and the Internet.
Layers of Interest: Physical, Data Link, Network, Transport, Application layers.
Packet Crafting: Discuss feasibility and implications of sending custom packets across networks, and how it varies with different protocols.
Instructor Contact: Dr. Abdullah Aydeger
University Affiliation: Florida Tech, Florida's STEM University.