Content Switch Design Introduce Linux-2.2.16 networking source code. IP Masquerade techniques. LVS(Linux Virtual Server). Design of the Content Switch.

Slides:



Advertisements
Similar presentations
Umut Girit  One of the core members of the Internet Protocol Suite, the set of network protocols used for the Internet. With UDP, computer.
Advertisements

Chapter 7 Intro to Routing & Switching.  Upon completion of this chapter, you should be able to:  Explain the need for the transport layer.  Identify.
Chapter 7 – Transport Layer Protocols
© 2007 Cisco Systems, Inc. All rights reserved.Cisco Public 1 Version 4.0 OSI Transport Layer Network Fundamentals – Chapter 4.
1 Internet Networking Spring 2004 Tutorial 13 LSNAT - Load Sharing NAT (RFC 2391)
11/2/2000Weihong Wang/Content Switch Page 1 Content Switch. Introduction of content web switch.. Some content switch products in the market.. Design of.
4-1 Network layer r transport segment from sending to receiving host r on sending side encapsulates segments into datagrams r on rcving side, delivers.
11/2/2000Weihong Wang/Content Switch Page 1 Content Web Switch Weihong Wang.
1 Network Address Translation (NAT) Relates to Lab 7. Module about private networks and NAT.
Content Switch. Introduction of content web switch.. Some content switch products in the market.. Design of a content switch.
Page: 1 Director 1.0 TECHNION Department of Computer Science The Computer Communication Lab (236340) Summer 2002 Submitted by: David Schwartz Idan Zak.
Cornell CS502 Web Basics and Protocols CS 502 – Carl Lagoze Acks to McCracken Syracuse Univ.
Leon-Garcia & Widjaja: Communication Networks Copyright ©2000 The McGraw Hill Companies The user clicks on a link to indicate which document is to be retrieved.
William Stallings Data and Computer Communications 7 th Edition (Selected slides used for lectures at Bina Nusantara University) Transport Layer.
1 School of Computing Science Simon Fraser University CMPT 771/471: Internet Architecture and Protocols Socket Programming Instructor: Dr. Mohamed Hefeeda.
Design and Implementation of a Server Director Project for the LCCN Lab at the Technion.
1 CCNA 2 v3.1 Module Intermediate TCP/IP CCNA 2 Module 10.
11/2/2000Weihong Wang/Content Switch Page 1 Content Web Switch Weihong Wang.
TCP. Learning objectives Reliable Transport in TCP TCP flow and Congestion Control.
ECE 526 – Network Processing Systems Design Packet Processing II: algorithms and data structures Chapter 5: D. E. Comer.
WXES2106 Network Technology Semester /2005 Chapter 8 Intermediate TCP CCNA2: Module 10.
1 ELEN 602 Lecture 15 More on IP TCP. 2 byte stream Send buffer segments Receive buffer byte stream Application ACKs Transmitter Receiver TCP Streams.
3-1 Transport services and protocols r provide logical communication between app processes running on different hosts r transport protocols run in end.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #12 LSNAT - Load Sharing NAT (RFC 2391)
Lecture 8 Modeling & Simulation of Communication Networks.
Process-to-Process Delivery:
The Transport Layer.
Adapted from: Computer Networking, Kurose/Ross 1DT066 Distributed Information Systems Chapter 4 Network Layer.
1 Semester 2 Module 10 Intermediate TCP/IP Yuda college of business James Chen
PA3: Router Junxian (Jim) Huang EECS 489 W11 /
LWIP TCP/IP Stack 김백규.
TCP/IP: Basics1 User Datagram Protocol (UDP) Another protocol at transport layer is UDP. It is Connectionless protocol i.e. no need to establish & terminate.
Our Last Class!!  summary  what does the future look like?
LWIP TCP/IP Stack 김백규.
Virtual Circuit Network. Network Layer 2 Network layer r transport segment from sending to receiving host r network layer protocols in every host, router.
Link Layer 5-1 Link layer, LAN s: outline 5.1 introduction, services 5.2 error detection, correction 5.3 multiple access protocols 5.4 LANs  addressing,
Fundamentals of Computer Networks ECE 478/578 Lecture #19: Transport Layer Instructor: Loukas Lazos Dept of Electrical and Computer Engineering University.
Transmission Control Protocol TCP. Transport layer function.
Access Control List (ACL)
1 © 2004, Cisco Systems, Inc. All rights reserved. Chapter 9 Intermediate TCP/IP/ Access Control Lists (ACLs)
Chapter 6-2 the TCP/IP Layers. The four layers of the TCP/IP model are listed in Table 6-2. The layers are The four layers of the TCP/IP model are listed.
Transport Layer3-1 Chapter 3: Transport Layer Our goals: r understand principles behind transport layer services: m multiplexing/demultipl exing m reliable.
1 TCP: Reliable Transport Service. 2 Transmission Control Protocol (TCP) Major transport protocol used in Internet Heavily used Completely reliable transfer.
IP1 The Underlying Technologies. What is inside the Internet? Or What are the key underlying technologies that make it work so successfully? –Packet Switching.
Lectu re 1 Recap: “Operational” view of Internet r Internet: “network of networks” m Requires sending, receiving of messages r protocols control sending,
© 2002, Cisco Systems, Inc. All rights reserved..
TCP/IP1 Address Resolution Protocol Internet uses IP address to recognize a computer. But IP address needs to be translated to physical address (NIC).
Cisco I Introduction to Networks Semester 1 Chapter 7 JEOPADY.
Ch. 23, 25 Q and A (NAT and UDP) Victor Norman IS333 Spring 2015.
Process-to-Process Delivery:
Represented BY:- Allauddin Ahmad.  What it is?  OSI model.  History.  Objectives.  Encapsulation and decapsulation.  Multiplexing and demultiplexing.
Chapter 9: Transport Layer
Instructor Materials Chapter 9: Transport Layer
Network Address Translation (NAT)
LWIP TCP/IP Stack 김백규.
06- Transport Layer Transport Layer.
Network Address Translation (NAT)
TCP Transport layer Er. Vikram Dhiman LPU.
Chapter 6 The Data Link layer
IS 4506 Server Configuration (HTTP Server)
When you connect with DHCP, you are assigned a
CSC Advanced Unix Programming, Fall 2015
Ch 17 - Binding Protocol Addresses
Synthesis A day in the life of a web request
INFORMATION FLOW ACROSS THE INTERNET
Network Address Translation (NAT)
Process-to-Process Delivery: UDP, TCP
Transport Layer 9/22/2019.
IS 4506 Configuring the FTP Service
Presentation transcript:

Content Switch Design Introduce Linux networking source code. IP Masquerade techniques. LVS(Linux Virtual Server). Design of the Content Switch.

Input/Output Processing in IP Layer Transport protocol Network interface Ip_input Ip_forward Ip_output Ip packet queue

IP Packet input Processing Ethernet Input - Ethernet device interrupted. - Ethernet driver receive packet and queue it. - Raise a software interrupt. Ip Input - Process ip packet, header,checksum. - Destination is local, deliver to upper layer. Use protocol field in ip header to decide witch upper layer input routine is called. - Otherwise send to ip_forward. TCP Input - Use tcp header information to locate the socket which is create by the according process. Signal the waiting process.

IP Masquerade A-box C-box B-box Linux Masq_Gate Internet Configure as firewall of private network. How it works: - When first packet comes, create a ip_masq entry in hash table, which contains the information of the connection. - The following packet of the same connection can be masqueraded based on the ip_masq entry. Ip Masquerade is called in ip_input.

LVS(Linux Virtual Server) Based on IP Masquerade. Distribute incoming packet load to the different back servers. - rr, lwc, wc, lc. - Load balancing based on source ip address and source port. Fail over. In ip_masq entry contains the current load of each server.

Content Switch Design Based on IP Masquerade and LVS. Distribute load also based on payload(content) of the packet. Some problems need to be solved: - Delay Binding. - Sequence number changed. - Content Extraction. - Multiple http request within one tcp connection. - Timeout problem.

Flow Chart of Content Switch (NAT) packet from client input to ip_input connection established? TCP/SYN? Create ip_masq entry,Save the packet Return to upper masquerade ip addr port,seq. forward ip packet return choose server Get data from queue forward to server choose server masq UDP packet forward to server deliver to upper layer TCP/data/ack UDP? y n y yy nnn

Flow Chart of Content Switch(NAT) packet from back server Connection established? msaq packet forward it return SYN/ACK? Dequeue the saved data Return to ip_input forward as normal input to ip_forward y n n

ACK(DSEQ+lenD1+1) ACK(SSEQ+lenD1+1) Client Content SwitchServer1 Server2 DATA(CSEQ+lenR1+1) ACK(DSEQ+lenD1+1) R2 in this packet SYN(CSEQ+lenR1) SYN(S2EQ) ACK(CSEQ+lenR1+1) DATA(CSEQ+lenR1+1) ACK(S2EQ+1) Diff(DSEQ+lenD1,S2EQ) DATA(S2EQ+1) ACK(CSEQ+lenR1+lenR2+1) DATA(DSEQ+lenD1+1) ACK(CSEQ+lenR+lenR2+1) ACK(DSEQ+lenD+lenD2+1) FIN Apporach 1: Discard the first Request

ACK(DSEQ+lenD+1) ACK(SSEQ+lenD+1) Content SwitchServer1 Server2 DATA(CSEQ+lenR+1) ACK(DSEQ+lenD+1) SYN(CSEQ+lenR) SYN(S2EQ) ACK(CSEQ+lenR+1) DATA(CSEQ+lenR+1) ACK(S2EQ+1) Diff(DSEQ+lenD,S2EQ) DATA(S2EQ+1) ACK(CSEQ+lenR+lenR2+1) DATA(DSEQ+lenD+1) ACK(CSEQ+lenR+lenR2+1) ACK(DSEQ+lenD+lenD2+1) DATA(SSEQ+lenD+1) ACK(CSEQ+lenR+1) step8 DATA(DSEQ+lenD+1) ACK(CSEQ+lenR+1) DATA(DSEQ+lenD+D2+1) ACK(CSEQ+lenR+lenR2+1+1) Keep the latest passing packet’s seq and ack_seq. Return ack needs to be decided which server it belongs. Client Approach 2: Out of Order Delivery, Incorrect?

Approach 3: Preserve Request Sequence Require the later document to be buffered if it is returned earlier? Adjust the TCP sequence # and send it back before first response comes back. This requires the knowledge of the size of first response.