Mobile IP (multimedia) without Mobile IP: SIP and RTP ... - Columbia CS

4 downloads 4557 Views 103KB Size Report
Jun 9, 1999 - typical post-dial delay: 1.5 round-trip time (with UDP). June 9 ... provides call control (hold, forward, transfer, media changes, ...) .... conference.
IP Mobility

1

Mobile IP (multimedia) without Mobile IP: SIP and RTP mobility Henning Schulzrinne Dept. of Computer Science Columbia University New York, New York [email protected] Bell Laboratories June 8, 1999

(Joint work Elin Wedlund)

June 9, 1999

IP Mobility

2

Overview • mobility: which layer? • SIP overview • SIP mobility • RTP mobility • Open issues

June 9, 1999

IP Mobility

3

Mobility • connected: move while connected • plug-in: lap top • synchronization: PalmPilot

June 9, 1999

IP Mobility

4

Review: Mobile IP • goal: make IP address changes invisible to upper layers • “home address” of mobile host (MH) home agent (HA): tunnels IP packets to current location; corresponent host (CH): the host that talks to MH (mobile or fixed); foreign agent (FA): router/MH that decapsulates packets

June 9, 1999

IP Mobility

5

Mobile moves to new network

MH

home network CN

MH

CH

HA HA

CH

data

HA

mobile host correspondent host router with home agent functionality router with foreign agent functionality

FA

tunnelled data

data

data MH

foreign network

• extra HA–FA + encapsulation packet delay • IP-in-IP encapsulation overhead of 20 bytes • MH may send directly to CH, but may not get out June 9, 1999

IP Mobility

6

Mobile IP with route optimization • CH tunnels directly to FA • UDP-based binding update from HA • old FA sends binding warning to HA ➠ HA sends binding update

June 9, 1999

IP Mobility

7

Problems with route-optimized IP • CH must change IP stack (tunnel!) • CH must support binding update process • only HA can send update ➠ delay • MH has to rely on old FA to forward packets • don’t send binding updates blindly

June 9, 1999

IP Mobility

8

Why is there no mobile IP deployment? • no incentive to install: few short-term visitors, few public access points beyond modems • address-based packet filtering for return traffic • operating system support lacking • many synchronization-based ➠ partially disconnected operation

June 9, 1999

IP Mobility

9

Application-Layer Mobility Address assignment: • DHCP • IPv6 autoconfiguration (link-local addresses) Web: “designed for mobility”? • short transactions ➠ client can close • restartable • stateless at server (cookies) • recoverable: “range” header

June 9, 1999

IP Mobility

10

Application-Layer Mobility Email: • POP for email retrieval, local storage • IMAP for server-storage • web-based email access (hotmail.com) • but: need “home” server for SMTP (spam prevention)

June 9, 1999

IP Mobility

11

Application-layer mobility News: • download and read • upload to local server ftp: • now: mostly large file transfers • recent: restart capability (“smart download”)

June 9, 1999

IP Mobility

12

Application-layer mobility file systems: • NFS: UDP based • even with TCP, stateless telnet: • type while walking/driving? • decreasing importance irc: needs continuous connectivity!

June 9, 1999

IP Mobility

13

Mobile applications: radio and TV • multicast: join at new location • main problems: IGMP leave latency, IGMP traffic • leave latency: depart without IGMP farewell • smooth handoff if listener in next local network

June 9, 1999

IP Mobility

14

What are truly mobile applications? • clients only • audio and video – 38% at home, 41% cars, 21% at work – three hours each weekday • telephone: “number of mobile-phone subscriptions in Finland (2.9 mio.) has surpassed the number of traditional fixed-phone subscriptions.”

June 9, 1999

IP Mobility

15

SIP Basics

June 9, 1999

IP Mobility

16

Light-weight signaling: Session Initiation Protocol (SIP) IETF MMUSIC working group (RFC 2543) • light-weight generic signaling protocol • part of IETF conference control architecture: – SAP for “Internet TV Guide” announcements – RTSP for media-on-demand – SDP for describing media – others: malloc, multicast, conference bus, . . . • typical post-dial delay: 1.5 round-trip time (with UDP)

June 9, 1999

IP Mobility

17

SIP Features, cont’d. • provides call control (hold, forward, transfer, media changes, ...) • leverages web infrastructure: security, “cgi-bin”, electronic payments, PICS, cookies, . . . • web-oriented: return HTML pages (“web IVR”) • network-protocol independent: UDP or TCP (or AAL5 or X.25) • easily extends to presence information (“buddy lists”) and event notification

June 9, 1999

IP Mobility

18

SIP for H.323 experts H.323 H.225.0 + RAS H.245 gatekeeper

SIP + SDP SIP SDP, SMIL, . . . proxy

June 9, 1999

IP Mobility

19

SIP architecture: peer-to-peer SIP redirect server

Internet

128.119.40.186

RTP audio

128.59.19.141

CATV Ethernet

June 9, 1999

IP Mobility

20

SIP architecture: carrier authenticate anonymize

SIP proxy

SIP proxy

10.4.5.6

firewall NAPT edge router

RTP audio 128.59.19.141

128.119.40.186

firewall NAPT edge router

10.1.2.3

CATV Ethernet

June 9, 1999

IP Mobility

21

SIP addresses food chain yellow pages common names host-independent host-specific IP address

“president of the United States” ↓ WWW search engines “Bill Clinton, Whitehouse” ↓ directory services [email protected] . SIP & SIP sip:[email protected] sip:[email protected] ↓ DNS 198.137.241.30

June 9, 1999

IP Mobility

22

SIP: basic operation 1. use directory service (e.g., LDAP) to map name to user@domain 2. locate SIP servers using DNS SRV, CNAME 3. called server may map name to user@host 4. callee accepts, rejects, forward (→ new address) 5. if new address, go to step 2 6. if accept, caller confirms 7. . . . conversation . . . 8. caller or callee sends BYE

June 9, 1999

IP Mobility

23

SIP–DNS interaction extended email-like domain resolution ➠ try until success: 1. try SRV DNS record for “sip.udp” and “sip.tcp” in domain, with priority and weights for randomized load balancing 2. DNS CNAME or A record 3. may try SMTP EXPN command to get new address; goto (1) 4. if all else fails, send SIP request via MIME

June 9, 1999

IP Mobility

24

SIP operation in proxy mode cs.columbia.edu

? location server 1

[email protected]

2

hgs@play

200 OK

4

henning

cs.tu-berlin.de

INVITE [email protected]

7

INVITE hgs@play 3

5

200 OK 6

play

tune

9

8

ACK hgs@play ACK [email protected]

June 9, 1999

IP Mobility

25

SIP operation in redirect mode

?

tu-berlin.de INVITE [email protected] 302 Moved temporarily Contact: [email protected]

2

henning

1

location server columbia.edu

ieee.org

3

4 5 ACK [email protected]

6 INVITE [email protected]

columbia.edu

7 200 OK 8 ACK [email protected]

hgs

June 9, 1999

IP Mobility

26

SIP operation in redirect mode INVITE [email protected] 302 Moved temporarily ACK INVITE [email protected]

100 Trying

200 OK ACK UAC

redirect server

UAS

ieee.org

[email protected]

June 9, 1999

IP Mobility

27

Interaction with resource reservation avoid “fast busy” after ringing ➠ interleave INVITE YESSIR? SR RR

reserve (no traffic - no charge)

SR RR

200

ACK or BYE June 9, 1999

IP Mobility

28

Invitation modes invitation

conference unicast multicast

unicast multicast

telephony reach first

MBone session dept. conference

➠ SIP for all modes, SAP also for multicast/multicast

June 9, 1999

IP Mobility

29

SIP servers and clients UAC: user-agent client (caller application) UAS: user-agent server ➠ accept, redirect, refuse call redirect server: redirect requests proxy server: server + client registrar: track user locations often combine registrar + proxy or redirect server

June 9, 1999

IP Mobility

30

Proxy and redirect servers proxy: may fork requests ➠ parallel or sequential search • near-end proxy: outgoing calls ➠ address lookup, policy, firewalls • far-end proxy: closer to callee ➠ callee firewall, call path hiding redirect server: lower state overhead, more messages

June 9, 1999

IP Mobility

31

SIP requests and responses • HTTP look-alike • provisional and final responses: – 1xx = searching, ringing, queueing, . . . – 2xx = success – 3xx = forwarding – 4xx = client mistakes – 5xx = server failures – 6xx = busy, refuse, not available anywhere

June 9, 1999

IP Mobility

32

SIP protocol request INVITE sip:[email protected] SIP/2.0 From: Christian Zahl To: Henning Schulzrinne Via: SIP/2.0/UDP 131.215.131.131, SIP/2.0 foo.com Call-ID: [email protected] Content-Type: application/sdp Content-Length: 187 CSeq: 8348 INVITE Subject: New error codes session description

June 9, 1999

IP Mobility

33

SIP URLs sip:[user:pw@]host:[port] ;transport=UDP;maddr=224.2.0.1 • used in Request-URI, Contact headers (redirect, registration), web pages • transport and maddr specify transport • can specify methods, header and body in web pages, email • example: sip:[email protected]

June 9, 1999

IP Mobility

34

SIP/RTP mobility overview • pre-call mobility ➠ SIP proxy, redirect • mid-call mobility ➠ SIP re-INVITE, RTP • recovery from disconnection

June 9, 1999

IP Mobility

35

Review: DHCP 1. client broadcasts DHCPDISCOVER 2. server offers address: DHCPOFFER 3. client broadcasts DHCPREQUEST 4. server acks via DHCPACK

June 9, 1999

IP Mobility

36

SIP mobility: pre-call • MH acquires IP address via DHCP • optional: MH finds SIP server via multicast REGISTER • MH updates home SIP server • optimization: hierarchical LR (later) redir

MH

home network

MH

CH

redir

1 2

CH

3 5

4 MH

mobile host correspondent host SIP redirect server

1

SIP INVITE

2

SIP 302 moved temporarily

3

SIP INVITE

4

SIP OK

5

data

foreign network

June 9, 1999

IP Mobility

37

SIP mobility: mid-call • MH→CH: new INVITE, with Contact and updated SDP • re-registers with home registrar redir

MH

home network

MH

CH

redir

CH

2

mobile host correspondent host SIP redirect server

1

SIP INVITE

2

SIP OK

3

data

1 3 MH MH

foreign network

June 9, 1999

IP Mobility

38

SIP mobility: simultaneous moves MH MH

MH

INVITE

INVITE

MH

MH

MH

➠ need addition to protocol behavior: try well-known address

June 9, 1999

IP Mobility

39

SIP mobility: security • telephone-like: random Call-ID, sequential CSeq • password: HTTP “basic” authentication ➠ plain-text password no better than Call-ID • challenge-response: HTTP “digest” authentication ➠ possibly more messages for updates • true crypto: PGP, S/MIME • possibilities: shared secret, ipsec, Lamport’s hash (OTP)

June 9, 1999

IP Mobility

40

SIP mobility: multi-stage registration Send this to local registrar, ca.move.com REGISTER sip:ny.move.com SIP/2.0 Contact: sip:[email protected] ;expires=3600 • gets proxied like INVITE to nyc.move.com ➠ hierarchical LR • only updates home registrar when MH leaves Calif. • first INVITE goes to ca.move.com

June 9, 1999

IP Mobility

41

Packet loss recovery • CH’s packets sent to old MH address lost • MH indicates seq. no. of last packet received in SDP • CH retransmits missing packets • artificial silence period? • proxy recovery?

June 9, 1999

IP Mobility

42

RTP mobility support • RTP uses 32-bit random synchronization source (SSRC) • stays constant even if IP address changes • RTCP SDES CNAME binds to global identity • very fast, binding update retransmitted every 50 ms. . . • loop/collision detection: if two sources with same SSRC, keep one • need to modify RTP discard behavior: keep new IP address

June 9, 1999

IP Mobility

43

RTP mobility • CH accepts RTP packets from new IP address • “mobile RTP” CH: – send own RTP packets (also) to the new address – allows smooth hand-offs – terminate double sending when receiving SIP update

June 9, 1999

IP Mobility

44

Comparison SIP vs. IP mobility

constant update security impl. reg.

IP

SIP

RTP

IP address binding upd. via HA OS one (*)

SIP url [email protected] re-INVITE call-ID, crypto app. proxy

SSRC/SDES audio packet crypto app. none

June 9, 1999

IP Mobility

45

Open Issues/Problems • latency: DHCP uses ARP for confirmation ➠ 150 ms latency • soft handover ➠ multiple IP addresses? • multi-stage location register • interaction with RTP loop detection • division of labor: do we need link-layer mobility?

June 9, 1999

IP Mobility

46

Conclusion • mobile data mostly done • mobile IP: infrastructure changes, overhead • Internet telephone mobility ➠ SIP • mobile media-on-demand terminals: RTP or RTSP REDIRECT

June 9, 1999

IP Mobility

47

More information Internet and telecom statistics: http://www.cs.columbia.edu/˜hgs/internet Papers: http://www.cs.columbia.edu/˜hgs/research/irt RTP: http://www.cs.columbia.edu/˜hgs/rtp RTSP: http://www.cs.columbia.edu/˜hgs/rtsp SIP: http://www.cs.columbia.edu/˜hgs/sip

June 9, 1999