Matt Griswold, 20C/United IX Greg Hankins, Alcatel-Lucent IX (PTT) - - PowerPoint PPT Presentation

matt griswold 20c united ix greg hankins alcatel lucent
SMART_READER_LITE
LIVE PREVIEW

Matt Griswold, 20C/United IX Greg Hankins, Alcatel-Lucent IX (PTT) - - PowerPoint PPT Presentation

Matt Griswold, 20C/United IX Greg Hankins, Alcatel-Lucent IX (PTT) Frum 9 - So Paulo, Brazil IX (PTT) Frum 9 2015/12/08 Agenda PeeringDB Introduction Organization Update PDB 1.0 vs. PDB 2.0 Automation Examples PeeringDB


slide-1
SLIDE 1

Matt Griswold, 20C/United IX Greg Hankins, Alcatel-Lucent IX (PTT) Fórum 9 - São Paulo, Brazil

IX (PTT) Fórum 9 2015/12/08

slide-2
SLIDE 2

Agenda

 PeeringDB Introduction  Organization Update  PDB 1.0 vs. PDB 2.0  Automation Examples

slide-3
SLIDE 3

PeeringDB Overview

 PeeringDB is the de facto reference database for peering information on the Internet  Contains location information and contacts for

  • Networks
  • Exchange points
  • Facilities

 A PeeringDB entry for your network makes it easy for people to find you, and helps you establish peering  Required for peering with certain networks, for example

  • Apple
  • Facebook
  • Microsoft
slide-4
SLIDE 4

Statistics

 Several new registrations from Brazil each

week!

Networks 8,293 Exchange Points 617 Facilities 1,863 Exchange Point Presences 25,508 Facility Presences 14,444

slide-5
SLIDE 5

Network Example

slide-6
SLIDE 6

Exchange Point Example

slide-7
SLIDE 7

Access to PeeringDB

 PDB 1.0 is available at

www.peeringdb.com

  • Current production version

 PDB 2.0 is in beta at beta.peeringdb.com

  • New version with many new features
slide-8
SLIDE 8

Registration

 If you aren’t registered in PeeringDB, you can register at

www.peeringdb.com/registration/register.php

 We use basic verification for new accounts and require

current whois information

  • Please update your whois information
  • Please register from a company email address

 Many new registrations from Brazil have mismatched

information

  • Email address != company email address
  • Email address != whois email address
  • Company name != whois company name
slide-9
SLIDE 9

Mailing Lists and Contacts

 PeeringDB Announce: lists.peeringdb.com/cgi-

bin/mailman/listinfo/pdb-announce

 PeeringDB Governance: lists.peeringdb.com/cgi-

bin/mailman/listinfo/pdb-gov

 PeeringDB Technical: lists.peeringdb.com/cgi-

bin/mailman/listinfo/pdb-tech

 PeeringDB User Discuss: lists.peeringdb.com/cgi-

bin/mailman/listinfo/user-discuss

 Support questions: support@peeringdb.com  Administrative questions: admin@peeringdb.com  Sponsorship info: sponsorship@peeringdb.com

slide-10
SLIDE 10

Agenda

 PeeringDB Introduction  Organization Update  PDB 1.0 vs. PDB 2.0  Automation Examples

slide-11
SLIDE 11

Organization

 Until now, PeeringDB has been run by an informal

group of admins using donated infrastructure

 PeeringDB needs funds for

  • Operations
  • Software development
  • Feature requests and enhancements

 Many organizations have offered donations to support

PeeringDB

 Unable to handle finances or contracts

slide-12
SLIDE 12

Elections

 Voting for the PeeringDB initial Board of Directors just finished on

November 30th, 2015

 Initial Board of Directors

  • Patrick W. Gilmore (Markley Group) - Vice President
  • Matt Griswold (20C)
  • Aaron Hughes (6connect) - President
  • Arnold Nipper (DE-CIX)
  • Job Snijders (NTT)

 First board meeting takes place today  Forming United States 501(c)(6) nonprofit corporation  All governance info is available at gov.peeringdb.com

slide-13
SLIDE 13

Agenda

 PeeringDB Introduction  Organization Update  PDB 1.0 vs. PDB 2.0  Automation Examples

slide-14
SLIDE 14

PDB 1.0

 Old, auto-generated code, unmaintainable  Schema issues

  • One network per user, requires multiple registrations
  • No data validation, lots of typos

 MySQL is the only "API"

  • Insecure, doesn't scale

 Exposes contact information to potential

spammers

slide-15
SLIDE 15

PDB 2.0

 New, clean, shiny Python  Completely redesigned schema  RESTful API  All data is cleaned and validated  Contact info has permissions

  • Guest login won’t see contact details
slide-16
SLIDE 16

PDB 2.0

 Everything is permissioned and editable

  • Data centers and IXPs can update their own info
  • Multiple networks can be associated with one login
  • Manage users and permissions

 Documented APIs at docs.peeringdb.com/api_specs  Many new features planned after release  Beta version is live now at beta.peeringdb.com

slide-17
SLIDE 17

Agenda

 PeeringDB Introduction  Organization Update  PDB 1.0 vs. PDB 2.0  Automation Examples

slide-18
SLIDE 18

API Specs

 All operations are supported

  • Read
  • Write
  • Create

 Each data type has an associated tag

  • net
  • org
  • ix
slide-19
SLIDE 19

API Specs

 To list all networks:

curl -X GET

https://<username>:<password>@beta. peeringdb.com/api/net

 To view a specific network:

curl -X GET

https://<username>:<password>@beta. peeringdb.com/api/net/20

slide-20
SLIDE 20

Python Library

 Python seems to be the go-to language for

network people

 Very early in life cycle

  • Expect more tests and features in the near future

 More languages and libraries will show up

  • PHP will probably be next

 Available at github.com/peeringdb/peeringdb-py

slide-21
SLIDE 21

Python Library

 Advantages

  • Local (not dependent on servers being up, etc.)
  • Custom indexes can be built
  • Custom fields can be added
  • Database engine can be chosen (MySQL, Postgres,

SQLite)

 To install:

pip install peeringdb

slide-22
SLIDE 22

Python Library

 T

  • configure a local database:

peeringdb configure

 T

  • keep in sync after configuration:

peeringdb sync

slide-23
SLIDE 23

Python Library

 T

  • output

YAML:

peeringdb get net20

 T

  • output JSON:

peeringdb get -O json net20

slide-24
SLIDE 24

Django PeeringDB

 PeeringDB models and local synchronization

for Django

 Available at github.com/peeringdb/django-

peeringdb

 Easy to integrate in a common web

framework

 Multiple database options  Used by peeringdb-py to sync data

slide-25
SLIDE 25

United IX Example

 Customer signs up  Backend system queries PeeringDB  Auto populates IXP Manager data

  • NOC info
  • Max prefix
  • Very easy to generate peering router

configuratoin

slide-26
SLIDE 26

Companies Using PDB 2.0

 Apple

  • Couchbase database sync
  • Not available to the public

 Netflix

  • Redis database sync
  • Available at github.com/netflix/peeringdb-py
slide-27
SLIDE 27

Questions?