Command Throttling in .NET EPP Client

maart 31st, 2010

 image

Bij de introductie van de EPP Interface heeft de SIDN besloten een “Acceptable Use Policy” te introduceren voor de EPP Interface.

Dit betekent dat u, als deelnemer van de SIDN, beperkt wordt in het aantal verzoeken dat u via de EPP Interface kunt doen naar de SIDN per tijdsinterval.

Volgens de “Acceptable Use Policy DRS5” worden deelnemers de volgende limieten opgelegd voor het opvragen van informatie via EPP;

  • CHECK-Commando’s: Maximaal 60 per 60 seconden en maximaal 60.000 per dag.
  • INFO-Commando’s: Maximaal 30 per 60 seconden, maximaal 5.000 plus het aantal door de deelnemer geregistreerde domeinnamen  per dag (naar beneden afgerond op een duizendtal) en met als bovengrens 100.000 per dag.
  • POLL-Commando’s: Maximaal 20 per 60 seconden en maximaal 5.000 per dag.

Als u meer verzoeken doet dan volgens de “Acceptable Use Policy” is toegestaan krijgt u de volgende EPP Melding;

Excessive querying; command not executed

Om te voorkomen dat u te veel verzoeken naar de registry stuurt, implementeert de .NET EPP Client nu “Command Throttling”.

Read the rest of this entry »

EPP Soap Client Online.

maart 26th, 2010

image

Vandaag is de eerste versie van de EPP Soap Client online gezet op onze website.

Enkele deelnemers hebben aangegeven geen problemen om te programmeren tegen een ‘normale’ Soap interface, maar hebben wel problemen met de specifieke EPP interface. Daarom hebben wij een Soap versie van de EPP interface gerealiseerd.

De Soap interface gebruikt onze eigen .NET versie van de Epp Client.

Binnen de specificaties van de EPP interface is het mogelijk, zelfs wenselijk, om meerdere opdrachten binnen één enkele sessie te versturen. Omdat Soap niet op dezelfde manier werkt, en het niet wenselijk is om bij elke opdracht opnieuw een sessie met de registry op te bouwen, gebruiken wij de unieke functionaliteit van de .NET Epp Client om de sessie van de deelnemer tot 10 minuten na het laatste verzoek actief te houden. Elk Soap bericht dat arriveert binnen 10 minuten na het laatste bericht, wordt daarom binnen dezelfde EPP sessie afgehandeld.

Het gebruik van de Soap interface naar de EPP interface van de registry gebruikt daarom altijd maximaal 1 sessie. Bij de SIDN zijn er maximaal 4 sessies per deelnemer toegestaan.

Op dit moment zijn de volgende methoden beschikbaar;

  • Domain Check – Is een domeinnaam beschikbaar?
  • Domain Info – Domeinnaam informatie opvragen (whois).
  • Contact Check – Is een handle beschikbaar?
  • Contact Info – Contactpersoon informatie opvragen.
  • Host Check – Is een name server beschikbaar?
  • Host Info – Host informatie opvragen.

Alle methoden worden uitgevoerd tegen de testomgeving van de SIDN (e.g. testdrs.domain-registry.nl).

Als u ook gebruikt wilt maken van onze test omgeving, dient u ons even een email bericht te sturen met daarin uw SIDN  deelnemernummer. Wij zullen dan uw account activeren op onze testomgeving. Uw SIDN wachtwoord hebben wij hiervoor NIET nodig. U dient u wachtwoord echter wél te gebruiken om de verschillende Soap aanroepen te doen. Wij slaan echter NOOIT uw wachtwoord op. Ofschoon we ons bewust zijn van eventuele bedenkingen die een deelnemer hierbij kan hebben; u verstuurt immers uw SIDN wachtwoord naar onze server(s), hopen we toch dat de Soap interface een waardevolle toevoeging kan zijn voor u als deelnemer. Al het berichtenverkeer wordt op berichtniveau versleuteld waardoor het niet mogelijk is het berichtenverkeer af te luisteren en zo uw SIDN wachtwoord te achterhalen.

De WSDL van deze beperkte interface kunt u hier inzien; http://www.eppclient.nl/soaptest/SidnEppSoapService.svc?wsdl Het certificaat dat gebruikt wordt voor het testen van de Soap functionaliteit is ongeldig. U dient hier rekening mee te houden bij de implementatie van uw Soap Client.

We zullen, indien er behoefte aan is, ook een open source test client beschikbaar stellen.

PHP EPP Client 1.0b1 beschikbaar.

maart 23rd, 2010

 Vandaag is versie 1.0 beta 1 van de PHP EPP Client beschikbaar gekomen.

Bij deze EPP Client zit ook een kleine en eenvoudige testapplicatie. Met deze applicatie kunt u vrijwel alle commando’s die de EPP Client ondersteunt gebruiken. Uiteraard is de feitelijke EPP Client alleen de EppClient.php. Deze u kunt gebruiken/implementeren in uw eigen beheersystemen.

De testapplicatie is niet bedoeld om in uw productieomgeving te gebruiken maar slechts om de functionaliteit van de EPP Client (EppClient.php) te testen!

Eisen

  • U dient een geldige gebruikersnaam en wachtwoord te hebben voor de RTO omgeving van de Sidn.
  • U dient de beschikking te hebben over een met computer met Windows of Linux, met PHP versie 5.2.0 of hoger geïnstalleerd.
  • De IONCube loaders moeten beschikbaar zijn op de computer. Dit kan door de IONCube loaders standaard te laden via de php.ini, of door de loaders in een subdirectory ‘ioncube’ onder de EppClient te plaatsen. De IONCube loaders zijn hier kostenloos te downloaden.

Ondersteuning

U kunt (beperkte) ondersteuning voor deze versie van de EPP Client krijgen via http://www.eppclient.nl/support. We zullen daar ook een ‘FAQ’ opbouwen.

Download

U kunt de PHP EPP Client 1.0b1 hier downloaden.

.NET EPP Client 1.0b2 beschikbaar.

februari 4th, 2010

Om iedereen die nu bezig is met het ontwikkelen van een web applicatie die de EPP Client gebruikt tegemoet te komen, hebben we versie 1.0 beta 2 van de EPP Client beschikbaar gesteld.

De wijzigingen sinds 1.0b1:

  • Rechtsvorm ‘BEG’ aangepast in ‘BGG’; In de SIDN handleiding staat de rechtsvorm ‘BEG’ beschreven, dit moet echter ‘BGG’ zijn.
  • Wijziging zoekmethode licentiebestand; De licentie wordt nu achtereenvolgens gezocht in deze mappen; De map waar EppClient.dll staat, Common Application Data, Local Application Data, System (e.g. c:\windows\system32), de ‘huidige’ directory. (De licentie moest in de ‘working directory’ van uw applicatie staan. Voor de meeste applicaties is dat de directory waar de EppClient.dll staat, maar voor web applicaties kan dat een andere locatie zijn.)
  • Gewijzigde licentie; we zullen toestaan dat er een debugger wordt gebruikt.

U kunt de .NET EPP Client 1.0b2 hier downloaden.

C# Web Applicatie Demo (Source code)

Visual Basic Web Applicatie Demo (Source code)

.NET EPP Client 1.0b1 beschikbaar.

februari 2nd, 2010

 Vandaag is versie 1.0 beta 1 van de .NET EPP Client beschikbaar gekomen.

imageZolang DRS5 van de Sidn nog niet in productie is, blijft de EPP Client in de beta fase. Deze beta is echter volledig functioneel. Als er geen wijzigingen aan de Sidn kant meer worden doorgevoerd, en wij kunnen geen significante problemen in onze code ontdekken, dan zal deze versie de eerste ‘RTM’ versie worden.

Bij deze EPP Client zit ook een kleine en eenvoudige testapplicatie. Met deze applicatie kunt u vrijwel alle commando’s die de EPP Client ondersteunt gebruiken. Uiteraard is de feitelijke EPP Client alleen de EppClient.dll. Deze u kunt gebruiken/implementeren in uw eigen beheersystemen.

De testapplicatie is niet bedoeld om in uw productieomgeving te gebruiken maar slechts om de functionaliteit van de EPP Client (EppClient.dll) te testen!

We zullen proberen om op korte termijn een overzicht te geven van alle functionaliteit in deze EPP Client. (Deze functionaliteit gaat véél verder dan het sec implementeren van de EPP standaarden!)

Eisen

  • U dient een geldige gebruikersnaam en wachtwoord te hebben voor de RTO omgeving van de Sidn.
  • U dient de beschikking te hebben over een met Windows 7, Vista, XP, 2003 of 2008 uitgerustte computer met het .NET Framework 3.5 geïnstalleerd. (N.b. de foutmelding vanuit de EppClient.dll worden in deze versie in het Nederlands of Engels weergegeven, afhankelijk van de instellingen van uw computer.)

Ondersteuning

U kunt (beperkte) ondersteuning voor deze versie van de EPP Client krijgen via http://www.eppclient.nl/support. We zullen daar ook een ‘FAQ’ opbouwen.

Download

U kunt de .NET EPP Client 1.0b1 hier downloaden.

Op naar 1 februari…

januari 30th, 2010

image

Het is bijna 1 februari en de DTO van de SIDN staat klaar voor haar deelnemers om hun EPP implementaties tegen dit nieuwe EPP systeem te testen. Er rest ons nog een paar uur om de puntjes op de i te zetten. Op dit moment worden alle methoden (voor de SIDN EPP implementatie) nog maals onder de loep genomen, en wordt er nog driftig ‘ge-refactor-d’.

Het is gebleken dat enkele operaties heel vaak gebruikt worden, maar dat de EPP implementatie van deze commando’s ‘omslachtig’ is. Om bijvoorbeeld de name servers van een domein aan te passen moeten de oude name servers worden verwijderd en de nieuwe worden toegevoegd.
Speciaal voor dit soort operaties worden op dit moment nog enkele methoden toegevoegd aan de EPP Client. Naast het toevoegen van nieuwe methoden worden ook ‘overloads’ op bestaande methoden toegevoegd. (Zo was het vanaf het begin al mogelijk om bij elke methode wel of geen transactiecode op te geven.)

Nu snel weer verder…

Minder XML versturen naar de registry.

januari 28th, 2010

XML is niet gemaakt om door mensen gelezen te worden. Zolang de XML geldig is volgens de opgegeven schema’s maakt het eigenlijk niet uit hoe de XML er uit ziet. Maar als u even wilt ‘meekijken’ naar de XML die verstuurd wordt naar de registry, dan zou het handig zijn als deze XML een beetje leesbaar is, zoals bijvoorbeeld in de handleiding van het EPP systeem van de Sidn.

In de .NET versie van de EPP Client kunt u er nu zelf voor kiezen hoeveel XML u naar de registry stuurt;

  • Zo min mogelijk; de XML is voor u bijna niet meer te lezen, maar is nog steeds geldig.
  • Gemiddeld; de XML is aardig leesbaar, maar kan nog wat onduidelijkheden voor u bevatten.
  • Zo veel mogelijk; de XML is voor u waarschijnlijk goed leesbaar en komt het meest overeen met de voorbeelden uit de handleiding van het EPP systeem van de registry.

U kunt de vorm van de XML berichten die de .NET Epp Client genereert beïnvloeden door het attribuut XmlVerbosity in te stellen.

Ik zal e.e.a. verduidelijken aan de hand van een voorbeeld.

Het gaat in dit voorbeeld om een verzoek om domeinnaam informatie van het domein eppclient.nl door middel van een ‘domain:info’ opdracht;

XmlVerbosity.Terse (Stuur zo min mogelijk XML.)

XmlVerbosity_Terse

XmlVerbosity.Normal (Stuur een ‘gemiddelde’ hoeveelheid XML.)

XmlVerbosity_Normal

XmlVerbosity.Verbose (Stuur een zo compleet mogelijk XML bericht.)

XmlVerbosity_Verbose

Waarschijnlijk ziet u zelf het verschil al. De hoeveelheid XML verschilt nog al;

XML Verbosity Modus Grootte bericht
XmlVerbosity.Terse 281 bytes
XmlVerbosity.Normal 437 bytes
XmlVerbosity.Verbose 637 bytes

Natuurlijk is alle gegenereerde XML volledig geldig volgens de EPP schema’s en wordt door de registry geaccepteerd.

De standaard waarde is vanaf nu XmlVerbosity.Terse maar kan ten allen tijden worden aangepast. (U hoeft geen nieuw EppClient object aan te maken, of de verbinding te verbreken!)

Uitbreiding EPP Client met .EU en .BE domeinnamen. (2)

januari 25th, 2010

In samenwerking met MyWWW internetdiensten is begonnen aan de implementatie van .eu en .be domeinnamen via de EurID respectievelijk DNS.be registries.

Dit betekent dat de EPP Client ook gebruikt kan worden voor deze TLD’s.

Omdat er veel verschillen zitten in de EPP implementatie van de verschillende registries zal het aantal commando’s dat mogelijk is binnen de EPP Client drastisch uitgebreid worden. Echter niet elk commando zal voor elke registry beschikbaar zijn. Er moet nog gekeken worden naar de wenselijkheid om de verschillende methoden ofwel uniform te maken ofwel toe te spitsen op het gebruik van één bepaalde registry. Mocht u een mening hebben over de te volgen koers, laat het gerust even weten via een e-mailtje naar info@eppclient.nl.

Geen templates a.u.b.

januari 21st, 2010

image Een van de veel gestelde vragen over de EPP Client is de volgende;

“Maakt de EPP Client gebruik van templates?”

Het antwoord is kort en krachtig;

“Nee”

Heel veel EPP implementaties maken gebruik van templates. Deze templates zijn voorbeeld XML berichten waarbij via een eenvoudige string operatie variabelen vervangen worden.

Dit model is niet flexibel en limiteert de gebruiker enorm in het gebruik van EPP.

De EPP Client is gebaseerd op een object model dat is samengesteld vanuit de schema’s die beschikbaar zijn voor het SIDN EPP systeem. Over het object model heen liggen verschillende methoden en vervolgens een abstractie van dit EPP model. Door het object model te gebruiken, en simpelweg te serializeren naar XML formaat worden geldige EPP XML berichten gegenereerd.

Dit zorgt voor een flexibele, robuuste, onderhoud bare en generieke EPP implementatie conform alle RFC’s.

De wachtrij voor berichten uitlezen.

januari 21st, 2010

image

Indien u in de web interface van de SIDN heeft aangegeven geen status berichten meer wenst te ontvangen via e-mail, maar via de EPP berichten wachtrij, dan kunt u met de EPP Client deze berichten uitlezen.

Nadeel is dat deze berichten relatief generiek zijn; binnen één berichtformaat, kunnen verschillende, discrepante, berichten teruggegeven worden. (Deze kunnen betrekking hebben op domeinnamen, contactpersonen of name servers.)

De EPP Client implementeert deze berichten in het PollResponse object.

Read the rest of this entry »