Introduction and Networking Review
Course Overview
The idea: create networks with basic hardware, where all the complexity comes from software.
SDN: programmability of data networks, hence rapid introductions of new services. Software-based controllers communicate with the hardware infrastructure and direct traffic on that network. Different from traditional networks that use dedicated hardware devices to control network traffic.
- This course will focus on how this technology will be used in 5G and 6G networks.
- Positive: can be controlled and monitored.
5G: high speeds everywhere and provide services that are best suited for each application,
- Network slicing: can create different virtual networks on different stacks
Books:
- Computer Networks: A Systems Approach (general)
- “Computer Networking : A Top-Down Approach Featuring the Internet”, Kurose & Ross (general)
- Software-defined networks: a systems approach
- 5G mobile networks: a systems approach
The Internet
"Victorian internet": ~150 years ago (1840), messages were sent through the telegram.
- sent over wires
- used Morse code
The internet: interconnection of networks (largest networks of networks) that act as a huge network for transport of data
- If you have an internetwork address, any host can send you a message. The internet knows how to route it. It dynamically does it.
- Not the first network. Many different networks were built before this, but have disappeared. Only IP and Ethernet standards have survived.
- Uses TCP/IP protocols and packet switching
The history of the internet:
- 1968: DARPA contracts (funded) with BBN to create the ARPAnet.
- 1970: first five nodes in UCLA, stanford, UCSB, U of Utah, BBN
- 1974: TCP specification invented by Vint Cerf
- 1984: On 1/1, converts en masse to use TCP/IP (there was only 1000 hosts)
Basic principles that built the internet:
- The underlying network must be simple so that it can be scaled
From Mainframes to Open Networks
Mainframes:
- intel / amd / arm build chips and other companies brings their OS.
- Vertically integrated: has special features, specialized control planes, specialized hardware
- proprietary and was slow to innovate
- Horizontally integrated: app / open interface / control planes / open interface / merchant switching chips
- open interfaces, rapidly innovated
The Ossified Network:
- features... (many complex functions baked into infra. OSPF, BGP, multicast, differentiated service, traffic engineering, NAT, firewalls, MPLS, redundant layers...)
- operating system
- along w features, it has million of lines of code, 6000+ RFCs
- specialized packet / forwarding hardware (power hungry)
Alternatively, Software Defined Networking's current approach:
- App
- Network OS
- between this layer and hardware, there is an open interface to hardware. there are standard protocols
- Specialized packet / forwarding hardware
Google uses network to connect their data centers
- uses network to 100% capacity by using clever traffic controlling
- to connect to the rest of the network, they use standard procedures
Network Layer Review
Networking Layer:
- transport segment from sending to receiving host
- sending side encapsulates segments into datagrams
- receiving side delivers segments to the transport layer
- network layer protocols in every host, router
- router examines header fields in all IP datagrams passing through it
Key networking layer functions:
- forwarding: moving packets from router's input to appropriate router output
- routing: determines route taken by packets from source to destination (routing algorithms)
- analogy: routing is the process of planning the trip and forwarding is the process of getting through a single interchange
High-end routers are like supercomputers, while a home router costs only $100.
Connection setup:
- an important function in some network architectures: atm, frame relay, x.25
- before datagrams flow, two end host and intervening routers establish virtual connections. routers get involved
- network vs transport layer connection service:
- network: between two hosts (may involve intervening routers in case of VCs)
- transport: between two processes
- takes a lot of time
Network service model: what service model for "channel" transporting datagrams from sender to receiver
- example service for individual datagrams: guaranteed delivery, guaranteed delivery with less than 40 msec delay
- example services for a flow of datagrams: in-order, guaranteed minimum bandwidth, restrictions on changes in inter-packet spacing
Virtual circuits (VC)
- VC consists of: 1) path from source to destination, 2) VC numbers, one number for each link along path, 3) entries in forwarding tables in routes along path.
- a packet belonging to VC carries VC number (rather than destination address)
- the VC number can be changed on each link and comes from forwarding table that the VC router maintains.
- signaling protocols are used to setup, maintain, and teardown VC. Used in ATM, frame-relay, X.25
- this protocol did not survive and is not used in today's internet
Datagram networks:
- what we use today
- no call set up at network layer
- good that the router doesn't need to maintain end-to-end connection information / state.
- no network-level concept of connection
- packets are forwarded using destination host address which is provided in the packet's header.
- router algorithm uses longest prefix match but it has to be super quick.
- because there are 4B IP addresses, we use range of address instead of listing individual destination. These are called aggregate table entries. you may have leading bits that are fixed...
Router architecture:
- two key router functions: run routing algorithms / protocol (RIP, OSPF, BGP)
- forwarding datagrams from incoming to outgoing link
Switching fabrics:
- transfer packet from input buffer to appropriate output buffer
- switching rate: rate at which packets can be transferred from inputs to outputs. measured as multiple of input/output line rate. N inputs: switching rate N times line rate desirable.
- three types of switching fabrics: memory, bus, crossbar
Why has packet switching become so successful? You can build whole networks at lower cost.
Linked from Software-Defined Networking