Video phone

20
asian institute of medicine, science and technology (aimst) asian institute of medicine, science and technology (aimst) IPv6 Videophone with IPv6 Videophone with Windows Driver Model Windows Driver Model By By Gopinath Rao Sinniah Gopinath Rao Sinniah Asian Institute of Medicine, Asian Institute of Medicine, Science and Technology Science and Technology (AIMST) (AIMST)

description

Presentation

Transcript of Video phone

Page 1: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

IPv6 Videophone with IPv6 Videophone with Windows Driver ModelWindows Driver Model

By By Gopinath Rao SinniahGopinath Rao Sinniah

Asian Institute of Medicine, Asian Institute of Medicine, Science and Technology Science and Technology

(AIMST)(AIMST)

Page 2: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Current Conferencing ToolsCurrent Conferencing Tools WDMWDM

Video captureVideo capture Audio captureAudio capture

QoS and Flow LabelQoS and Flow Label IPv6 Address bindingIPv6 Address binding Use of Flow Label in IPv6Use of Flow Label in IPv6 Types of CommunicationTypes of Communication Videophone using winsock2Videophone using winsock2 Videophone using multicastVideophone using multicast The flow of packets using WDM and IPv6 The flow of packets using WDM and IPv6 Videophone to mobile phone (3G/4G)Videophone to mobile phone (3G/4G)

Page 3: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Current ToolsCurrent Tools

Vic & RatVic & RatHVIP6 (High-quality Video conferencing HVIP6 (High-quality Video conferencing

platform based on IPv6 multicast) platform based on IPv6 multicast) Gnome MeetingGnome Meeting

Page 4: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Windows for Driver Model (WDM)Windows for Driver Model (WDM)

Advantages of WDM Video CaptureAdvantages of WDM Video Capture 32 bit address32 bit address Synergy between DirectShow and CSASynergy between DirectShow and CSA Single class driver architectureSingle class driver architecture Television tuner, input selection and support Television tuner, input selection and support

for fieldsfor fields One driver for all Windows OSOne driver for all Windows OS

Page 5: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Windows Driver Model (WDM)Windows Driver Model (WDM)

Video CaptureVideo Capture

Page 6: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Audio Capture in WDMAudio Capture in WDM Audio processing is performed in kernel modeAudio processing is performed in kernel mode Kernel streaming is built on top of WDMKernel streaming is built on top of WDM

Page 7: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

What is QoSWhat is QoSA video phone application requires:A video phone application requires: The cost is not prohibitiveThe cost is not prohibitive There is a network path available to the other There is a network path available to the other

partyparty The user knows the IP address of the terminal The user knows the IP address of the terminal

the other userthe other user The end terminals can reassemble the data The end terminals can reassemble the data

packets into a sensible orderpackets into a sensible order The end terminals understand how to handle The end terminals understand how to handle

errors in packetserrors in packets The packets arrived at the minimum length of The packets arrived at the minimum length of

timetime

Page 8: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Use of Flow Label in IPv6 headerUse of Flow Label in IPv6 header

Advantages of using flow labelAdvantages of using flow label Decreases the average processing load of the Decreases the average processing load of the

network routersnetwork routers Facilitates end-to-end IP level security Facilitates end-to-end IP level security

mechanismmechanism Reserving resources using flow label reduce Reserving resources using flow label reduce

problem caused by frequent route changesproblem caused by frequent route changes Facilitate implementation of QoS based Facilitate implementation of QoS based

routingrouting

Page 9: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

The use of 20-bit flow label for QoSThe use of 20-bit flow label for QoS Will ensure smooth transition on video and audio Will ensure smooth transition on video and audio

packets without degradationpackets without degradation Will ensure adequate latency levelWill ensure adequate latency level Requires special handling by routers (a separate Requires special handling by routers (a separate

project)project)

Still in the implementation levelStill in the implementation level

Page 10: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

IPv6 Address bindingIPv6 Address binding Most of the nodes will have more than Most of the nodes will have more than

1 IPv6 address1 IPv6 address Link Local AddressLink Local Address Global Unicast AddressGlobal Unicast Address

Choice of source address based on Choice of source address based on destination addressdestination address

Will integrate the use of “default Will integrate the use of “default address selection for IPv6” – RFC address selection for IPv6” – RFC 3484 in future3484 in future

1.Destination address : link local

Source Address : link local address

2.Destination address : not link localSource Address : global address

Page 11: Video phone

Types of CommunicationTypes of Communication Initially the system developed using point to point (unicast)Initially the system developed using point to point (unicast)

Multicast transmission is still under developmentMulticast transmission is still under developmentMulticast in a LAN is not a problemMulticast in a LAN is not a problemMulticast in WAN - need to use appropriate Multicast in WAN - need to use appropriate multicast multicast

routingrouting

IPv6 Client IPv6 Client

LAN

Send

Receive Send

Receive

IPv6 Client

IPv6 Client

IPv6 Client

IPv6 Client

Bridge

Cloud

Video

Audio

Page 12: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

How does IPv6 Videophone works?How does IPv6 Videophone works?

Videophone uses both TCPv6 and UDPv6 Videophone uses both TCPv6 and UDPv6 TCPv6 for exchanging information between 2 TCPv6 for exchanging information between 2

machinesmachinesUDPv6 for transmitting video and audio UDPv6 for transmitting video and audio

packetspackets

Page 13: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

IPv6 Videophone using winsock2IPv6 Videophone using winsock2

Uses winsock2 architecture (RFC 2533)Uses winsock2 architecture (RFC 2533) WSASocket() is used as the predefined socket WSASocket() is used as the predefined socket

objectsobjects Create socketCreate socket

Optimization on WSASocket for receiving Optimization on WSASocket for receiving continuous audio/video packet continuous audio/video packet

m_hSocket=WSASocket (AF_INET6, SOCK_DGRAM, IPPROTO_UDP, NULL, 0,0);

if (WSAAsyncSelect(m_hSocket, mesg_ptr->m_hWnd, WM_SOCKET_EVENT, IEvent) == SOCKET_ERROR)

Page 14: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

IPv6 Videophone using multicastIPv6 Videophone using multicast Send multicast packet by setting IPv6 multicast address in Send multicast packet by setting IPv6 multicast address in

sendto () functionsendto () function

To receive multicast packet, the following is used after the To receive multicast packet, the following is used after the creation of WSASocketcreation of WSASocket

This sends ICMPv6 multicast Listener Discovery (MLD) to This sends ICMPv6 multicast Listener Discovery (MLD) to the multicast groupthe multicast group

sendto(m_sndSocket, buffer, sendsize, 0, (LPSOCKADDR) &m_sendtoadd, add_size)

Multicast address :ff01:0:0:0:0:0:0:2

struct ipv6_mreq imr6;Imr6.ipv6mr_interface=0;Setsockopt(m_hSocket, IPPROTO_IPV6, IPV6_JOIN_GROUP, (char *) &imr6, sizeof(imr6));

Page 15: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Flow of PacketFlow of Packet

Capture of Video / Audio using WDM

Compressed Video / Audio using WDM

IPv6 Socket creation

IPv6 Address Selection

Link Local Address / Unicast

AddressMulticast address

Marking of packets using IPv6 flow

label (QoS)

3G / 4G Transition server

IPv6 Network

IPv6 Network

3G / 4G network

3G / 4G network

IPv6 Client

Page 16: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

The communication The communication

Node A request connection from node B Node A request connection from node B (TCPv6)(TCPv6)

Node A sends compressed data to node B Node A sends compressed data to node B (UDPv6)(UDPv6)

Node B decompress and playbackNode B decompress and playback

Web camWeb cam

Accept/Deny

Hub

Connect

IPv6 Node A IPv6 Node B

Page 17: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Capture Audio/Video using WDM

Compressed Audio/Video using WDM

Sender

Receiver

Send

Flow label and traffic class will check the traffic and ensure it is sending to the proper address.

Decompressed Audio/Video using WDM

Playback Audio/Video using WDM

Node A

Node B

Page 18: Video phone

Future Extension – pc to mobile Future Extension – pc to mobile phone (3G/4G) in IPv6 modephone (3G/4G) in IPv6 mode

External services (IPv6)

Operator services/ intanet(IPv6)

GGSN

GGSN

GPRS Core

AP1IPv6

AP2IPv6

AP3IPv4

backbone (IPv4)

Backbone (IPv6

SGSN

SGSNIPv4 Network

Native IPv4 host

MT in IPv6mode

IPv6 PDPcontext

IPv4 PDPcontext

Edge Router

Dual stack host

Dual StackRouter

MT in IPv4mode

Dual stackmobile

terminals

IPv6/IPv4gateway

6to4 tunnel

6in4 tunnel

Server

Translation server

IPv6 Videophone

Page 19: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

ConclusionConclusion

The system is not much different from other The system is not much different from other Video Conferencing toolsVideo Conferencing tools

The use of IPv6 features are primary objectiveThe use of IPv6 features are primary objective Flow labelFlow label Mobile communicationMobile communication

System is being developed to support:System is being developed to support: QoS using flow label and traffic classQoS using flow label and traffic class Session Initiation Protocol (SIP)Session Initiation Protocol (SIP) Mobile & wireless communicationMobile & wireless communication

Page 20: Video phone

asian institute of medicine, science and technology (aimst)asian institute of medicine, science and technology (aimst)

Thank YouThank You

Gopinath Rao SinniahGopinath Rao Sinniah

[email protected]@aimst.edu.my