Presentation is loading. Please wait.

Presentation is loading. Please wait.

Current Topic – EPP - TWNIC Jeff Yeh <jeff@twnic.net.tw>

Similar presentations


Presentation on theme: "Current Topic – EPP - TWNIC Jeff Yeh <jeff@twnic.net.tw>"— Presentation transcript:

1 Current Topic – EPP - TWNIC Jeff Yeh

2 Overview EPP Introduction TWNIC EPP Implementation What is EPP Why EPP
EPP relate information TWNIC EPP Implementation TWNIC EPP Environment EPP issue Policy issue TWNIC technical issue today i'd like to introduce about EPP my presentation today will divided into 3 major part 1. EPP introduction which contains a brief intorduction of EPP, and what's the advantage of adopting EPP Then we will talk about the EPP implementaiton experience in TWNIC including the TWNIC EPP environment and the problems that TWNIC encounted

3 What is EPP Client-Server Protocol for provisioning and management objects Key feature Object model XML Based Extensible framework Generic object management operation what is epp epp is a client-server protocol for provisioning and management objects the key feature of EPP are object model XML based extensible framework generic object management operation as these features ePP basically can provision for all kinds of object not only domain name Such as insurance contract, tax … Maybe new business opentunity for epp

4 EPP Command Session Management Commands Query Commands
Login: login to EPP server Logout: logout from EPP server Query Commands Check: retrieve object availability Info: retrieve information about an object Transfer: retrieve status of a transfer operation Poll: retrieve queued messages at server Object Transform Commands Create: create an instance of an object Delete: delete an instance of an object Renew: extend the validity of an object Transfer: initiated a change in the sponsorship of an object Update: change information associated with an object As epp standard specified There 3 kinds of operation command session management command is to maintain a epp session Such as login in and logout Query command is used to retrieve object information Check command is to determine if a object availe or not info command is to retrieve the associate information with an object transfer query command is to retrieve the transfer status of an object and poll command is to retrieve server queued messages And object transform commands create command is to create an object delete command is to delete an object renew command is to extend the validity of an object (for domain name is the expiring date of the domain name) transfer command is to change the sponsorship of an object (to transfer from one registrar to another registrar will use this command) update command is to change the information of an object

5 Typical EPP command <?xml version="1.0" encoding="UTF-8" standalone="no"?> <epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:xsi=" xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd"> <command> <info> <obj:info xmlns:obj="urn:ietf:params:xml:ns:obj" xsi:schemaLocation="urn:ietf:params:xml:ns:obj obj.xsd"> <obj:name>example</obj:name> </obj:info> </info> <clTRID>ABC-12345</clTRID> </command> </epp> Here is a typical epp command XML header XML namespace EPP command Object specific namespace Object specific information EPP transaction id

6 Typical EPP response <?xml version="1.0" encoding="UTF-8" standalone="no"?> <epp xmlns="urn:ietf:params:xml:ns:epp-1.0" xmlns:xsi=" xsi:schemaLocation="urn:ietf:params:xml:ns:epp-1.0 epp-1.0.xsd"> <response> <result code="1000"> <msg lang="en">Command completed successfully</msg> </result> <trID> <clTRID>ABC-12345</clTRID> <svTRID>54321-XYZ</svTRID> </trID> </response> </epp> Typical EPP response format XML header EPP namespace EPP response EPP resopnse code EPP response message EPP transaction id (client, server)

7 EPP Client (Registrar)
A Typical EPP Session EPP Client (Registrar) EPP Server (Registry) connection setup <greeting> EPP Session Establishment <login> <response> <command-1> <response> EPP Transactions: Object Provisioning and Queries Here is a typical epp session When an EPP client connect to EPP server Server will return a greeting message to client Then client can perform login in command with it id & pwd After the authentication is done, a epp session is build A epp connect can accept unlimited commands, Client can perform their command when the epp session Is active Finally a logout command colsedown an epp session <command-n> <response> <logout> EPP Session Closedown <response> connection teardown

8 EPP server state machine
Waiting for Client Connected Or <hello> Prepare Greeting Close Connection Or Idle Send Greeting End session Timeout Waiting for Client Authentication Send Response <login> Received Prepare Fail Response Send 2501 Response Processing <login> Auth Fail Auth OK Here is the full state machine of a EPP server Timeout Waiting for Command Send Response Send x5xx Response Command Received Prepare Response Command Processed Processing command

9 EPP domain Function Command Domain Host Contact
Session Management <hello> N/A <greeting> <login> <logout> Transformation <create> <update> <delete> <renew> <transfer> Query <check> <info> <poll> When EPP map to domain name registration model It consist with 3 kinds of object, domain, host and contact. Where domain means domain name object Host means name server object Contact is the contact person object Each object type has it’s own operation. For host and contact object, the renew command will not implemented. Because they don’t need to be renewed. likewise host object don’t need transfer command.

10 Why EPP IETF Standard Extensible UTF8 Security
Well-defined atomic operation Automation Then whey EPP Because it’s IETF Standard, that means easy to bridge registrar-registry And it’s Extensible to fit policy difference UTF8 is able to deal with all characters in different languages Security: EPP should build upon a SSL/TSL connection and need id/pwd authentication and authoritication And its well-defined atomic operation, easy to maintain and management Full automatic registration The major benefit of adopting EPP is registry only need to develop a single system to connect with all the registrars And the registrars also need only one system to connect with all registries. Reduce the overhead of develop new system

11 EPP current status RFC Standard (RFC-EDITOR) Standard Port 700 (3121)
draft-ietf-provreg-epp-09.txt draft-ietf-provreg-epp-contact-07.txt draft-ietf-provreg-epp-domain-07.txt draft-ietf-provreg-epp-host-07.txt draft-ietf-provreg-epp-tcp-06.txt Standard Port 700 (3121) TLDs adopting EPP gTLDs: .biz, .info, .name, .coop ccTLDs: .us, .au, .cn, .tw, .at, .pl,... EPP currently is not a RFC standard yet, but you can already found it on the RFC database And it’s status is RFC-EDITOR, and will get RFC numbers very soon. The latest version of epp is …… And the standard port of EPP will use 700, where the old draft using 3121 as EPP server port. And there are already a lot of TLDs adopting EPP Such as .biz, .info, .name on gTLD And .us, .au, .cn, .tw …on ccTLD

12 EPP related information
Provreg WG website: Mail Archive: And here are some epp related informations If you have interesting on ePP, you may have a look on these link above

13 TWNIC environment draft-ietf-provreg-epp-04.txt
draft-ietf-provreg-epp-contact-02.txt draft-ietf-provreg-epp-domain-02.txt draft-ietf-provreg-epp-host-02.txt And then I’d like to introduce TWNIC EPP environment and share some experience TWNIC use epp draft 0402 Where the Major difference between latest version is the Privacy issue And some XML schema different But the object defination and procedure are almost the same

14 TWNIC environment EPP Server OS: Linux 2.4.18
Develop Language: Perl 5.8.0 Database Server OS: SunOS 5.8 Database Server: Oracle 8.0.5 TWNIC EPP server environment is linux And develop with perl 5.8 (some people ask why use perl rather than java, our thought is perl can run on various platform such as java and the performace issue on java is bad also, the most important is …. We don’t have java experience… And the backend database is oracle on sun 5.8

15 TWNIC EPP Structure registrars registry EPP Server 1 Registry Database
client EPP Server 1 registrar2 EPP client Registry Database registrar3 EPP client This slide shows the TWNIC EPP structure To overcome the Perl performance problem, we use 2 server in the front to accept epp connections Current chart…response time 1500ms registrar4 EPP client EPP Server 2 registrar5 EPP client registrar6 EPP client

16 TWNIC EPP status Launch on Jan 20th, 2004
Connect with 18 registrars (via NeuLevel) More than 300 domain name registered on the first day New registration growth 35% Launch on jan 20 And connect with 18 registrars (via neulevel epp gateway More than 300 domain name registered on the first launch day The new registration amount per month growth about > %

17 EPP developing reminder
Linked Status Roid Poll message Extension for each registry Schema validation (*.xsd) Here are some reminders when developing epp system Linked status means a object is in use (such as a contact object is link to a domain object contact person) In this case, the contact object can not being removed Theoritically is simple but is important when developing Roid is just a unique identifier of a object, thought it not really used in EPP but it necessary Bascially poll message is a comunciation channel within registry/registrar, you can put message on poll to let registrar know Basically epp is standard, but due to the policy different, every registry may have their different requirement, so the extension is used to solve this problem Enable the schema validation can reduce the debug time on the XML schema errors

18 TWNIC Policy issue Transfer procedure Rename Grace Period
Special Field Here I’ll talk about some TWNIc policy issues that related EPP The first is transfer procedure, the original transfer procedure in TWNIC is to transfer out on the old registrar, then go to the new registrar to setup a transfer in job. But in EPP standard, a transfer operation is initialed by new registrar, then after the old registrar approved the transfer, the transfer operation can be done. In TWNIC Guidelines for Administration of Domain Name Registration, it defines TWNIC have domain name rename service However, EPP don’t have rename operation, In TWNIC registration policy, we have 7 days grace period, but EPP don’t have this kind of function Currently we just active the domain name, then if user regret within 7 days, he havn’t to pay any fee. The last one is the special field restriction, in Taiwan you must have a company tax id code to register .com.tw, but for foreign firms , they don’t have this informations.

19 TWNIC technical issue Database code type Database layout
BIG5->UTF8 Database layout Front end user interface problem API & EPP parallel run

20 IDN over EPP UTF8 No standard until now


Download ppt "Current Topic – EPP - TWNIC Jeff Yeh <jeff@twnic.net.tw>"

Similar presentations


Ads by Google