SlideShare a Scribd company logo
1 of 54
From NAT to NAT Traversal
2014/12/25
Qlync Inc.
YAO, LI-WEI
1
How to access network resource
anytime and anywhere?
2
How to access network resource
anytime and anywhere?
• Locate Resource
• Signal —> Not Today
• Access Resource
• P2P Communication —> Today
3
Agenda
• Network Resource or Service
• Public and Private IP Address
• What is NAT?
• How to access Network Resource behind NAT?
• Port Forwarding
• NAT Traversal
• ICE Protocol
• ICE related projects - WebRTC
4
Network Resource/Service
• Web Page
•
• File Download
•
• Video/Audio Streaming
•
5
Network Resource/Service
• Web Page —> HTTP/HTTPS
•
• File Download —> FTP/SAMBA
•
• Video/Audio Streaming —> RTSP/RTP
•
6
Network Resource/Service
• Web Page —> HTTP/HTTPS
• —> TCP:80/TCP:443
• File Download —> FTP/SAMBA
• —> TCP:21/TCP:445
• Video/Audio Streaming —> RTSP/RTP
• —> TCP:554/UDP:554/UDP:16384-32767
7
Network Resource/Service
• Web Page —> HTTP/HTTPS
• —> TCP:80/TCP:443
• File Download —> FTP/SAMBA
• —> TCP:21/TCP:445
• Video/Audio Streaming —> RTSP/RTP
• —> TCP:554/UDP:554/UDP:16384-32767
+ Server IP Address
8
Public and Private IP Address
http://developer.eyeball.com/faq.php
9
Public and Private IP Address
http://www.ic.ims.hr
10
Public and Private IP Address
http://www.highteck.net/EN/Network/Addressing_the_Network-IPv4.html
11
What is NAT?
• Remapping one IP address
space into another
• Private IP/port mapping to
Public IP/port
• Rewrite the source and/or
destination addresses of IP
packets as they pass the
router or firewall
• Server: IP address
• Resource: Protocol:Port
12
http://www.cisco.com/web/about/ac123/ac147/archived_issues/ipj_7-3/anatomy.html
13
SNAT - Private to Public
http://linux.vbird.org/linux_server/0250simple_firewall.php
14
SNAT - Private to Public
http://linux.vbird.org/linux_server/0250simple_firewall.php
15
How to access Network
Resource behind NAT?
=
Public to Private?
16
DNAT - Public to Private
http://linux.vbird.org/linux_server/0250simple_firewall.php
17
Port Forwarding
http://panasonic.net/pcc/support/netwkcam/technic/port_fwrd.html
18
Router Setting
http://community.linksys.com/t5/Cameras/port-forwarding-questions/td-p/318824
19
With Router or Gateway Control
Port Forwarding
+
Static Public IP/
Dynamic Public IP + DDNS*
*http://www.tp-link.tw/article/?faqid=297
20
With Router or Gateway Control
http://www.quickmeme.com/IM-KING-OF-THE-WORLD
21
Without Router or Gateway
Control
22
Without Router or Gateway Control
https://www.flickr.com/photos/39561139@N05/4488876837/galleries/
23
Nothing is
Impossible!
R&D CAN DO ANYTHING!
http://www.englishbaby.com/findfriends/view_photo/251578
24
Without Router or Gateway
Control
How to access Network
Resource behind NAT?
=
NAT Traversal Solutions
25
NAT Traversal Solutions
• Universal Plug and Play -
Internet Gateway Device:
UPnP-IGD
• SOCKS Proxy
• Application Layer Gateway:
ALG
• Interactive Connection
Establishment: ICE = STUN +
TURN
26
UPnP-IGD
http://blog.chinaaet.com/detail/28455
27
UPnP-IGD
http://blog.chinaaet.com/detail/28455
28
SOCKS Proxy
29
http://stackoverflow.com/questions/18428498/sending-udp-packets-through-socks-proxy
SOCKS Proxy
http://stackoverflow.com/questions/18428498/sending-udp-packets-through-socks-proxy
30
ALG
http://www.h3c.com/portal/Technical_Support___Documents/Technical_Documents/Routers/
H3C_SR6600_Series_Routers/Configuration/Operation_Manual/H3C_SR6600_OM-Release_2315(V1.09)/
07/201212/765251_1285_0.htm
31
ICE
STUN + TURN
UDP Hole
Punching
+
Relay
http://thesalesblog.com/blog/2013/09/01/some-thoughts-on-pricing-power/32
ICE = STUN + TURN
http://blog.schertz.name/2012/10/lync-edge-stun-turn/
33
NAT Types
• Full Cone NAT
• Address Restricted NAT
• Port Restricted NAT
• Symmetric NAT
34
Full Cone
Mapping: 192.168.2.2:4445 <-> 1.1.1.4:10100
Policy: ALLOW ALL TO 1.1.1.4:10100
Full Cone 只是單純的做位址轉換,並未對進出的封包設限。︒
http://www.slideshare.net/dadaista/nat-traversal
35
Address Restricted
Mapping: 192.168.2.2:4445 <-> 1.1.1.4:10100
Policy: ALLOW 1.1.1.5 TO 1.1.1.4:10100
ALLOW 1.1.1.6 TO 1.1.1.4:10100
只有收過NAT 內部送來的封包的地址才能將封包送入 Restrict Cone NAT 內
http://www.slideshare.net/dadaista/nat-traversal
36
Port Restricted
只有收過NAT 內部送來的封包的地址及 Port Number 才能將封包送入 Restrict Cone NAT 內。︒
Mapping: 192.168.2.2:4445 <-> 1.1.1.4:10100
Policy: ALLOW 1.1.1.5:7777 TO 1.1.1.4:10100
*ALLOW 1.1.1.6:7777 TO 1.1.1.4:10100
http://www.slideshare.net/dadaista/nat-traversal
37
Symmetric
Symmetric NAT只允許先由私有網域內的使⽤用者發送封包到網際網路中的使⽤用者 可以回傳封包
Mapping: 192.168.2.2:4445 <-> 1.1.1.4:10100
192.168.2.2:4445 <-> 1.1.1.4:10179
Policy: ALLOW 1.1.1.5:7777 TO 1.1.1.4:10100
ALLOW 1.1.1.6:7777 TO 1.1.1.4:10179
http://www.slideshare.net/dadaista/nat-traversal
38
UDP Hole Punching
Different NAT Type, Different Approach
http://www.drdobbs.com/jvm/punching-holes-with-java-rmi/217400127
39
http://www.brynosaurus.com/pub/net/p2pnat/40
STUN (RFC 5389/3489)
Abstract
Session Traversal Utilities for NAT (STUN) is a protocol that serves as a
tool for other protocols in dealing with Network Address Translator (NAT)
traversal. It can be used by an endpoint to determine the IP address and port
allocated to it by a NAT. It can also be used to check connectivity between
two endpoints, and as a keep-alive protocol to maintain NAT bindings. STUN
works with many existing NATs, and does not require any special behavior
from them.
STUN is not a NAT traversal solution by itself. Rather, it is a tool to be used
in the context of a NAT traversal solution. This is an important change from
the previous version of this specification (RFC 3489), which presented STUN
as a complete solution.
This document obsoletes RFC 3489.
41
http://www.cs.nccu.edu.tw/%7Elien/Writing/NGN/firewall.htm42
http://www.cs.nccu.edu.tw/%7Elien/Writing/NGN/firewall.htm
43
http://speed.cis.nctu.edu.tw/~ydlin/pdf/NAT-Compatibility-Testbed.pdf
44
TURN (RFC 5766/6062)
Abstract
If a host is located behind a NAT, then in certain situations it can be
impossible for that host to communicate directly with other hosts (peers).
In these situations, it is necessary for the host to use the services of an
intermediate node that acts as a communication relay. This specification
defines a protocol, called TURN (Traversal Using Relays around NAT),
that allows the host to control the operation of the relay and to exchange
packets with its peers using the relay. TURN differs from some other relay
control protocols in that it allows a client to communicate with multiple
peers using a single relay address.
The TURN protocol was designed to be used as part of the ICE
(Interactive Connectivity Establishment) approach to NAT traversal,
though it also can be used without ICE.
46
ICE = STUN + TURN
http://blog.schertz.name/2012/10/lync-edge-stun-turn/
47
ICE (5245/5768)
Abstract
This document describes a protocol for Network Address
Translator (NAT) traversal for UDP-based multimedia sessions
established with the offer/answer model. This protocol is called
Interactive Connectivity Establishment (ICE). ICE makes use of
the Session Traversal Utilities for NAT (STUN) protocol and its
extension, Traversal Using Relay NAT (TURN). ICE can be used
by any protocol utilizing the offer/answer model, such as the
Session Initiation Protocol (SIP).
48
ICE Candidate…
SDP…
…
WebRTC is a free, open
project that provides
browsers and mobile
applications with Real-Time
Communications (RTC)
capabilities via simple APIs.
50
On-demand Live Video and Audio
https://fr.jocly.com/node/339
51
WebRTC Architecture
http://www.html5rocks.com/en/tutorials/webrtc/basics/
52
WebRTC Find Connection Candidates
http://www.html5rocks.com/en/tutorials/webrtc/basics/
53
WebRTC Data Pathways
http://www.html5rocks.com/en/tutorials/webrtc/basics/
54

More Related Content

What's hot

Juniper Srx quickstart-12.1r3
Juniper Srx quickstart-12.1r3Juniper Srx quickstart-12.1r3
Juniper Srx quickstart-12.1r3Mohamed Al-Natour
 
IPv6 - Neighbour Discovery
IPv6 - Neighbour DiscoveryIPv6 - Neighbour Discovery
IPv6 - Neighbour DiscoveryHeba_a
 
Hot standby router protocol (hsrp) using
Hot standby router protocol (hsrp) usingHot standby router protocol (hsrp) using
Hot standby router protocol (hsrp) usingShubhiGupta94
 
ICE: The ultimate way of beating NAT in SIP
ICE: The ultimate way of beating NAT in SIPICE: The ultimate way of beating NAT in SIP
ICE: The ultimate way of beating NAT in SIPSaúl Ibarra Corretgé
 
VLAN Trunking Protocol
VLAN Trunking ProtocolVLAN Trunking Protocol
VLAN Trunking ProtocolNetwax Lab
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelDivye Kapoor
 
Fun with Network Interfaces
Fun with Network InterfacesFun with Network Interfaces
Fun with Network InterfacesKernel TLV
 
IOS Cisco - Cheat sheets
IOS Cisco - Cheat sheetsIOS Cisco - Cheat sheets
IOS Cisco - Cheat sheetsAlejandro Marin
 
Introduction to Router and Routing Basics
Introduction to Router and Routing BasicsIntroduction to Router and Routing Basics
Introduction to Router and Routing BasicsDarwish Ahmad
 
EIGRP (enhanced interior gateway routing protocol)
EIGRP (enhanced interior gateway routing protocol)EIGRP (enhanced interior gateway routing protocol)
EIGRP (enhanced interior gateway routing protocol)Netwax Lab
 
Routers and Routing Configuration
Routers and Routing ConfigurationRouters and Routing Configuration
Routers and Routing Configurationyasir1122
 

What's hot (20)

Juniper Srx quickstart-12.1r3
Juniper Srx quickstart-12.1r3Juniper Srx quickstart-12.1r3
Juniper Srx quickstart-12.1r3
 
IPv6 - Neighbour Discovery
IPv6 - Neighbour DiscoveryIPv6 - Neighbour Discovery
IPv6 - Neighbour Discovery
 
Hot standby router protocol (hsrp) using
Hot standby router protocol (hsrp) usingHot standby router protocol (hsrp) using
Hot standby router protocol (hsrp) using
 
ICE: The ultimate way of beating NAT in SIP
ICE: The ultimate way of beating NAT in SIPICE: The ultimate way of beating NAT in SIP
ICE: The ultimate way of beating NAT in SIP
 
Ospf.ppt
Ospf.pptOspf.ppt
Ospf.ppt
 
VLAN Trunking Protocol
VLAN Trunking ProtocolVLAN Trunking Protocol
VLAN Trunking Protocol
 
IP multicast
IP multicastIP multicast
IP multicast
 
The TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux KernelThe TCP/IP Stack in the Linux Kernel
The TCP/IP Stack in the Linux Kernel
 
Cisco Commands
Cisco CommandsCisco Commands
Cisco Commands
 
Dynamic routing
Dynamic routingDynamic routing
Dynamic routing
 
Bgp
BgpBgp
Bgp
 
Stun turn poc_pilot
Stun turn poc_pilotStun turn poc_pilot
Stun turn poc_pilot
 
Fun with Network Interfaces
Fun with Network InterfacesFun with Network Interfaces
Fun with Network Interfaces
 
Cours3 ospf-eigrp
Cours3 ospf-eigrpCours3 ospf-eigrp
Cours3 ospf-eigrp
 
9 ipv6-routing
9 ipv6-routing9 ipv6-routing
9 ipv6-routing
 
Policy Based Routing
Policy Based RoutingPolicy Based Routing
Policy Based Routing
 
IOS Cisco - Cheat sheets
IOS Cisco - Cheat sheetsIOS Cisco - Cheat sheets
IOS Cisco - Cheat sheets
 
Introduction to Router and Routing Basics
Introduction to Router and Routing BasicsIntroduction to Router and Routing Basics
Introduction to Router and Routing Basics
 
EIGRP (enhanced interior gateway routing protocol)
EIGRP (enhanced interior gateway routing protocol)EIGRP (enhanced interior gateway routing protocol)
EIGRP (enhanced interior gateway routing protocol)
 
Routers and Routing Configuration
Routers and Routing ConfigurationRouters and Routing Configuration
Routers and Routing Configuration
 

Viewers also liked

SIP 2012:: ICE - NAT traversal for media
SIP 2012:: ICE - NAT traversal for mediaSIP 2012:: ICE - NAT traversal for media
SIP 2012:: ICE - NAT traversal for mediaOlle E Johansson
 
Webrt integration by altanai bisht
Webrt integration by altanai bishtWebrt integration by altanai bisht
Webrt integration by altanai bishtALTANAI BISHT
 
Introduction to WebRTC
Introduction to WebRTCIntroduction to WebRTC
Introduction to WebRTCPatrick Cason
 
Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...
Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...
Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...Amitesh Madhur
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overviewRouyun Pan
 
AnyFirewall Engine & Server by Eyeball Networks
AnyFirewall Engine & Server by Eyeball NetworksAnyFirewall Engine & Server by Eyeball Networks
AnyFirewall Engine & Server by Eyeball NetworksEyeball Networks
 
Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해Dahyun Kim
 

Viewers also liked (13)

Ice
IceIce
Ice
 
ICE basic
ICE basicICE basic
ICE basic
 
SIP 2012:: ICE - NAT traversal for media
SIP 2012:: ICE - NAT traversal for mediaSIP 2012:: ICE - NAT traversal for media
SIP 2012:: ICE - NAT traversal for media
 
Kranky geekwebrtc demo
Kranky geekwebrtc demoKranky geekwebrtc demo
Kranky geekwebrtc demo
 
IMANOVMUSALIM_com (1)
IMANOVMUSALIM_com (1)IMANOVMUSALIM_com (1)
IMANOVMUSALIM_com (1)
 
Webrt integration by altanai bisht
Webrt integration by altanai bishtWebrt integration by altanai bisht
Webrt integration by altanai bisht
 
Introduction to WebRTC
Introduction to WebRTCIntroduction to WebRTC
Introduction to WebRTC
 
Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...
Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...
Web rtc, Media stream, Peer connection, Setting up STUN and TURN on Linux and...
 
WebRTC presentation
WebRTC presentationWebRTC presentation
WebRTC presentation
 
2016-09-17 03 Василий Полозов. WebRTC
2016-09-17 03 Василий Полозов. WebRTC2016-09-17 03 Василий Полозов. WebRTC
2016-09-17 03 Василий Полозов. WebRTC
 
WebRTC overview
WebRTC overviewWebRTC overview
WebRTC overview
 
AnyFirewall Engine & Server by Eyeball Networks
AnyFirewall Engine & Server by Eyeball NetworksAnyFirewall Engine & Server by Eyeball Networks
AnyFirewall Engine & Server by Eyeball Networks
 
Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해Web rtc 핵심 기술에 대한 이해
Web rtc 핵심 기술에 대한 이해
 

Similar to From NAT to NAT Traversal

Software defined networking(sdn) pro acrtive routing path update research pro...
Software defined networking(sdn) pro acrtive routing path update research pro...Software defined networking(sdn) pro acrtive routing path update research pro...
Software defined networking(sdn) pro acrtive routing path update research pro...MD SHIBLI
 
TRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch HaimTRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch Haimharryvanhaaren
 
A new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUIC
A new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUICA new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUIC
A new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUICAPNIC
 
Update on IPv6 activity in CERNET2
Update on IPv6 activity in CERNET2Update on IPv6 activity in CERNET2
Update on IPv6 activity in CERNET2APNIC
 
BGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionBGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionAPNIC
 
OpenFlow: What is it Good For?
OpenFlow: What is it Good For? OpenFlow: What is it Good For?
OpenFlow: What is it Good For? APNIC
 
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDKLagopus SDN/OpenFlow switch
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaJim St. Leger
 
Osnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptxOsnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptxM.Qasim Arham
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspectiveshwetank
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar
 
How to Implement SDN Technology in ITB
How to Implement SDN Technology in ITBHow to Implement SDN Technology in ITB
How to Implement SDN Technology in ITBSDNRG ITB
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNGerardo Pardo-Castellote
 
Network tunneling techniques
Network tunneling techniquesNetwork tunneling techniques
Network tunneling techniquesinbroker
 
Service Function Chaining in Openstack Neutron
Service Function Chaining in Openstack NeutronService Function Chaining in Openstack Neutron
Service Function Chaining in Openstack NeutronMichelle Holley
 

Similar to From NAT to NAT Traversal (20)

Astricon 10 (October 2013) - SIP over WebSocket on Kamailio
Astricon 10 (October 2013) - SIP over WebSocket on KamailioAstricon 10 (October 2013) - SIP over WebSocket on Kamailio
Astricon 10 (October 2013) - SIP over WebSocket on Kamailio
 
Transport layer
Transport layerTransport layer
Transport layer
 
Software defined networking(sdn) pro acrtive routing path update research pro...
Software defined networking(sdn) pro acrtive routing path update research pro...Software defined networking(sdn) pro acrtive routing path update research pro...
Software defined networking(sdn) pro acrtive routing path update research pro...
 
TRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch HaimTRex Traffic Generator - Hanoch Haim
TRex Traffic Generator - Hanoch Haim
 
A new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUIC
A new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUICA new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUIC
A new Internet? Intro to HTTP/2, QUIC, DoH and DNS over QUIC
 
Update on IPv6 activity in CERNET2
Update on IPv6 activity in CERNET2Update on IPv6 activity in CERNET2
Update on IPv6 activity in CERNET2
 
BGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and DiscussionBGP Flowspec (RFC5575) Case study and Discussion
BGP Flowspec (RFC5575) Case study and Discussion
 
OpenFlow: What is it Good For?
OpenFlow: What is it Good For? OpenFlow: What is it Good For?
OpenFlow: What is it Good For?
 
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
DPDK summit 2015: It's kind of fun  to do the impossible with DPDKDPDK summit 2015: It's kind of fun  to do the impossible with DPDK
DPDK summit 2015: It's kind of fun to do the impossible with DPDK
 
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro NakajimaDPDK Summit 2015 - NTT - Yoshihiro Nakajima
DPDK Summit 2015 - NTT - Yoshihiro Nakajima
 
Osnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptxOsnug meetup-tungsten fabric - overview.pptx
Osnug meetup-tungsten fabric - overview.pptx
 
WebRTC: A front-end perspective
WebRTC: A front-end perspectiveWebRTC: A front-end perspective
WebRTC: A front-end perspective
 
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFVBharath Ram Chandrasekar_Tele 6603_SDN &NFV
Bharath Ram Chandrasekar_Tele 6603_SDN &NFV
 
PROFIBUS frame analysis - Peter Thomas of Control Specialists
PROFIBUS frame analysis - Peter Thomas of Control SpecialistsPROFIBUS frame analysis - Peter Thomas of Control Specialists
PROFIBUS frame analysis - Peter Thomas of Control Specialists
 
How to Implement SDN Technology in ITB
How to Implement SDN Technology in ITBHow to Implement SDN Technology in ITB
How to Implement SDN Technology in ITB
 
Protocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDNProtocol and Integration Challenges for SDN
Protocol and Integration Challenges for SDN
 
Network tunneling techniques
Network tunneling techniquesNetwork tunneling techniques
Network tunneling techniques
 
Wan networks
Wan networksWan networks
Wan networks
 
Service Function Chaining in Openstack Neutron
Service Function Chaining in Openstack NeutronService Function Chaining in Openstack Neutron
Service Function Chaining in Openstack Neutron
 
Ports and protocols
Ports and protocolsPorts and protocols
Ports and protocols
 

More from Li-Wei Yao

SSL Certificate and Code Signing
SSL Certificate and Code SigningSSL Certificate and Code Signing
SSL Certificate and Code SigningLi-Wei Yao
 
6.2 Move Creation Knowledge to Factory - Refactoring to Patterns
6.2 Move Creation Knowledge to Factory - Refactoring to Patterns6.2 Move Creation Knowledge to Factory - Refactoring to Patterns
6.2 Move Creation Knowledge to Factory - Refactoring to PatternsLi-Wei Yao
 
6.3 Encapsulate Classes with Factory - Refactoring to Patterns
6.3 Encapsulate Classes with Factory - Refactoring to Patterns6.3 Encapsulate Classes with Factory - Refactoring to Patterns
6.3 Encapsulate Classes with Factory - Refactoring to PatternsLi-Wei Yao
 
6.1 Replace Constructors with Creation Methods - Refactoring to Patterns
6.1 Replace Constructors with Creation Methods - Refactoring to Patterns6.1 Replace Constructors with Creation Methods - Refactoring to Patterns
6.1 Replace Constructors with Creation Methods - Refactoring to PatternsLi-Wei Yao
 
Qlync RD 第三屆讀書會候選清單
Qlync RD 第三屆讀書會候選清單Qlync RD 第三屆讀書會候選清單
Qlync RD 第三屆讀書會候選清單Li-Wei Yao
 
自動測試 - 測試對象的識別/封裝
自動測試 - 測試對象的識別/封裝自動測試 - 測試對象的識別/封裝
自動測試 - 測試對象的識別/封裝Li-Wei Yao
 
Design Pattern - Iterator and Composite Patterns
Design Pattern - Iterator and Composite PatternsDesign Pattern - Iterator and Composite Patterns
Design Pattern - Iterator and Composite PatternsLi-Wei Yao
 
Design Pattern - Factory Pattern
Design Pattern - Factory PatternDesign Pattern - Factory Pattern
Design Pattern - Factory PatternLi-Wei Yao
 

More from Li-Wei Yao (9)

SSL Certificate and Code Signing
SSL Certificate and Code SigningSSL Certificate and Code Signing
SSL Certificate and Code Signing
 
Docker Usage
Docker UsageDocker Usage
Docker Usage
 
6.2 Move Creation Knowledge to Factory - Refactoring to Patterns
6.2 Move Creation Knowledge to Factory - Refactoring to Patterns6.2 Move Creation Knowledge to Factory - Refactoring to Patterns
6.2 Move Creation Knowledge to Factory - Refactoring to Patterns
 
6.3 Encapsulate Classes with Factory - Refactoring to Patterns
6.3 Encapsulate Classes with Factory - Refactoring to Patterns6.3 Encapsulate Classes with Factory - Refactoring to Patterns
6.3 Encapsulate Classes with Factory - Refactoring to Patterns
 
6.1 Replace Constructors with Creation Methods - Refactoring to Patterns
6.1 Replace Constructors with Creation Methods - Refactoring to Patterns6.1 Replace Constructors with Creation Methods - Refactoring to Patterns
6.1 Replace Constructors with Creation Methods - Refactoring to Patterns
 
Qlync RD 第三屆讀書會候選清單
Qlync RD 第三屆讀書會候選清單Qlync RD 第三屆讀書會候選清單
Qlync RD 第三屆讀書會候選清單
 
自動測試 - 測試對象的識別/封裝
自動測試 - 測試對象的識別/封裝自動測試 - 測試對象的識別/封裝
自動測試 - 測試對象的識別/封裝
 
Design Pattern - Iterator and Composite Patterns
Design Pattern - Iterator and Composite PatternsDesign Pattern - Iterator and Composite Patterns
Design Pattern - Iterator and Composite Patterns
 
Design Pattern - Factory Pattern
Design Pattern - Factory PatternDesign Pattern - Factory Pattern
Design Pattern - Factory Pattern
 

Recently uploaded

Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...MyIntelliSource, Inc.
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionSolGuruz
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...kellynguyen01
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 

Recently uploaded (20)

Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
Short Story: Unveiling the Reasoning Abilities of Large Language Models by Ke...
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 

From NAT to NAT Traversal