porting vs pipe