HHVM JIT: A profile-guided, region-based compiler for PHP and Hack

HHVM JIT: A profile-guided, region-based compiler for PHP and Hack Ottoni, PLDI’18

HHVM is a virtual machine for PHP and Hack (a PHP extension) which is used to power Facebook’s website among others. Today’s paper choice describes the second generation HHVM implementation, which delivered a 21.7% performance boost when running the Facebook website compared to the previous HHVM implementation.

…the PHP code base that runs the Facebook website includes tens of millions of lines of source code, which are translated to hundreds of megabytes of machine code during execution.

I’m clearly suffering from an over-simplified understanding of what the Facebook web application actually does, but at the same time if I asked you to write a Facebook clone for just the website (not the backing services, not the mobile apps, etc.), would your initial estimate be on the order of tens of millions of lines of code???!

HHVM high-level overview

The starting point for HHVM is source code in PHP or Hack. Hack is a PHP dialect used by Facebook and includes support for a richer set of type hints. From the perspective of HHVM though the two languages are fundamentally equivalent. In particular, Hack’s type hints are Continue reading

What the Caesars (@DefCon) WiFi situation looks like

So I took a survey of WiFi at Caesar's Palace and thought I'd write up some results.


When we go to DEF CON in Vegas, hundreds of us bring our WiFi tools to look at the world. Actually, no special hardware is necessary, as modern laptops/phones have WiFi built-in, while the operating system (Windows, macOS, Linux) enables “monitor mode”. Software is widely available and free. We still love our specialized WiFi dongles and directional antennas, but they aren’t really needed anymore.

It’s also legal, as long as you are just grabbing header information and broadcasts. Which is about all that’s useful anymore as encryption has become the norm -- we can pretty much only see what we are allowed to see. The days of grabbing somebody’s session-cookie and hijacking their web email are long gone (though the was a fun period). There are still a few targets around if you want to WiFi hack, but most are gone.

So naturally I wanted to do a survey of what Caesar’s Palace has for WiFi during the DEF CON hacker conference located there.

Here is a list of access-points (on channel 1 only) sorted by popularity, the number of stations using Continue reading

Vagrant Libvirt Install openSUSE

I have recently started using openSUSE as my server platform of choice. This post will go over installing qemu-kvm and libvirt for use with Vagrant and the vagrant-libirt provider on openSUSE. For reference the following software will be used in this post. openSUSE - 15 Vagrant - 2.1.2 ...

MikroTik ISP Design: Building an 802.1q trunk between sites using VPLS and S-tag

Use Case

ISPs that use MikroTik are always looking for new ways to deliver services to customers and expand their offerings. Delivering Layer 2 at scale for customers is a design challenge that comes up frequently.

While it’s easy enough to build a VLAN nested inside of another VLAN  (see below), this requires you to build all of the VLANs a customer wants to use into the PE router or handoff switch.

However, if you have a client that needs a layer 2 service delivered to two or more points and wants to be able to treat it just like an 802.1q trunk and add VLANs in an ad-hoc way, then using the S-Tag feature in RouterOS along with VPLS transport is a great option.

What’s the S-tag do???

S-Tag

Clients will often ask me “what’s the S-Tag check box for?”

So a little background on this, there is a protocol for using outer and inner VLAN tags specified in IEEE 802.1ad that uses Service Tag (or S-Tag) to denote the outer VLAN tag used to transport Customer Tags (or C-Tags).

What makes the S-Tag/C-Tag a little bit different is that it actually changes the ethertype of the Frame.

Continue reading

MikroTik ISP Design: Building an 802.1q trunk between sites using VPLS and S-tag

Use Case

ISPs that use MikroTik are always looking for new ways to deliver services to customers and expand their offerings. Delivering Layer 2 at scale for customers is a design challenge that comes up frequently.

While it’s easy enough to build a VLAN nested inside of another VLAN  (see below), this requires you to build all of the VLANs a customer wants to use into the PE router or handoff switch.

VLAN-inside-VLAN

However, if you have a client that needs a layer 2 service delivered to two or more points and wants to be able to treat it just like an 802.1q trunk and add VLANs in an ad-hoc way, then using the S-Tag feature in RouterOS along with VPLS transport is a great option.

What’s the S-tag do???

S-Tag

Clients will often ask me “what’s the S-Tag check box for?”

So a little background on this, there is a protocol for using outer and inner VLAN tags specified in IEEE 802.1ad that uses Service Tag (or S-Tag) to denote the outer VLAN tag used to transport Customer Tags (or C-Tags).

What makes the S-Tag/C-Tag a little bit different is that it actually changes the ethertype of the Frame.

Continue reading

Juniper Announces New Acceleration Cards For SRX5000 Security Appliances

Juniper Networks has announced that it will soon begin shipping new SPC3 (Services Process Card) Advanced Security Acceleration cards for its SRX5000 line of security gateways, which includes the 5400, 5600, and 5800 appliances. These security appliances target large enterprises, service providers, and cloud providers. Customers can mix and match security features including firewalling, IPS, […]

How many labels for VPN in MPLS

How many labels for VPN in MPLS ?     For those who has good amount of knowledge in MPLS already may know the answer. Or if you have taken my CCDE course before, this question is basic for you.   But understanding this fundamental piece of knowledge is key to understand MPLS Applications. MPLS …

The post How many labels for VPN in MPLS appeared first on Cisco Network Design and Architecture | CCDE Bootcamp | orhanergun.net.

How many labels for VPN in MPLS

How many labels for VPN in MPLS ?     For those who has good amount of knowledge in MPLS already may know the answer. Or if you have taken my CCDE course before, this question is basic for you.   But understanding this fundamental piece of knowledge is key to understand MPLS Applications. MPLS …

The post How many labels for VPN in MPLS appeared first on Cisco Network Design and Architecture | CCDE Bootcamp | orhanergun.net.

How many labels for VPN in MPLS

How many labels for VPN in MPLS ?     For those who has good amount of knowledge in MPLS already may know the answer. Or if you have taken my CCDE course before, this question is basic for you.   But understanding this fundamental piece of knowledge is key to understand MPLS Applications. MPLS […]

The post How many labels for VPN in MPLS appeared first on Cisco Network Design and Architecture | CCDE Bootcamp | orhanergun.net.

IDG Contributor Network: I’ve got the RF power

If you’re reading this, you’ve got RF power. Power is a necessity for networking, allowing us to charge our batteries, connect millions of devices, communicate over long distances and keep our signals clear.Don’t believe me? Kill the power and see what happens to your network.But with great RF power comes great responsibility. Power management is the art and science of optimizing input and output signals to maximize the efficiency and performance of RF devices – and it’s no easy feat. Each networking device has its own unique power requirements. Higher data rates often mean more power consumption and complexity, which can introduce losses that reduce reliability and increase cost. Low data rate devices, such as those supporting the Internet of Things (IoT), draw very little power in order to conserve every millisecond of precious battery power.To read this article in full, please click here

IDG Contributor Network: I’ve got the RF power

If you’re reading this, you’ve got RF power. Power is a necessity for networking, allowing us to charge our batteries, connect millions of devices, communicate over long distances and keep our signals clear.Don’t believe me? Kill the power and see what happens to your network.But with great RF power comes great responsibility. Power management is the art and science of optimizing input and output signals to maximize the efficiency and performance of RF devices – and it’s no easy feat. Each networking device has its own unique power requirements. Higher data rates often mean more power consumption and complexity, which can introduce losses that reduce reliability and increase cost. Low data rate devices, such as those supporting the Internet of Things (IoT), draw very little power in order to conserve every millisecond of precious battery power.To read this article in full, please click here

BrandPost: DNS: Hiding in Plain Sight – It’s No Longer Just Infrastructure. It’s a Requirement for Security, Scalability

During its 35-year history, DNS has been largely known as the backbone of the internet, a powerful tool that enabled the internet’s infrastructure to develop into the distributed marvel it is. Even though it’s always been there, the way it is being used has changed. Now, a modern DNS deployment is also critical to a cybersecurity strategy and to deliver the scalability that growing enterprises need.Once considered solely the internet’s address book, DNS has become a favored target of cybercriminals and hackers who are constantly trying to either cause havoc to or extract valuable data (or cash) from unwitting enterprises worldwide. Because it’s at the center of everything, it’s no great surprise that 90 percent of all cyberattacks, such as DDoS attacks, ransomware, and data exfiltration, target DNS.To read this article in full, please click here